Last active
May 13, 2026 17:21
-
-
Save ozzyrod/a4d760cfa68c1058da2f8ea1e0df6e62 to your computer and use it in GitHub Desktop.
Oracle Eloqua REST API — OpenAPI 3.0 specification (358 paths, 550 operations)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| openapi: 3.0.3 | |
| info: | |
| title: Oracle Eloqua REST API | |
| version: "2.0.0" | |
| description: | | |
| OpenAPI 3.0 specification for Oracle Eloqua REST APIs. Optimised for LLM tool-use | |
| (e.g. Laravel MCP, OpenAI function-calling). | |
| ## Which API version to use | |
| | API | Base path | Use when | | |
| |-----|-----------|----------| | |
| | **Application API 2.0** | `/api/rest/2.0/` | Default for all new work — contacts, accounts, campaigns, emails, forms, programs, SMS, folders, segments | | |
| | **Application API 1.0** | `/api/REST/1.0/` | Resources not yet in v2: Content Sections, Microsites, Option Lists, Email Headers/Footers | | |
| | **Bulk API 2.0** | `/api/bulk/2.0/` | Async exports/imports of large datasets (thousands+ records). Always 4-step workflow — never call data endpoints directly | | |
| | **OData Reporting API** | `/API/OData/` | Read-only analytics: email clicks, bounces, campaign responses, account engagement | | |
| ## Bulk API 4-step workflow | |
| The Bulk API is **asynchronous**. Data is never available immediately — always go through a sync: | |
| ``` | |
| Step 1 — Define | |
| POST /api/bulk/2.0/contacts/exports | |
| Body: { | |
| "name": "My Export", | |
| "fields": { "Email": "{{Contact.Field(C_EmailAddress)}}", "First": "{{Contact.Field(C_FirstName)}}" }, | |
| "filter": "{{Contact.Field(C_EmailAddress)}}='*@acme.com'" | |
| } | |
| ← Returns: { "uri": "/contacts/exports/1", ... } | |
| Step 2 — Trigger | |
| POST /api/bulk/2.0/syncs | |
| Body: { "syncedInstanceUri": "/contacts/exports/1" } | |
| ← Returns: { "uri": "/syncs/42", "status": "pending" } | |
| Step 3 — Poll | |
| GET /api/bulk/2.0/syncs/42 | |
| ← Repeat until status = "success" | "warning" | "error" | |
| "warning" = completed with some errors (check /syncs/42/logs) | |
| "error" = failed entirely | |
| Step 4 — Fetch | |
| GET /api/bulk/2.0/syncs/42/data?offset=0&limit=50000 | |
| ← Paginate: increment offset by limit until hasMore = false | |
| ``` | |
| For **imports**: define import → POST data to import URI → trigger sync → poll. | |
| For **sync actions** (add to list, set field, etc.): define → POST member URIs as data → trigger → poll. | |
| ## Field statement syntax (Bulk API) | |
| Fields in bulk definitions use Eloqua statement syntax: | |
| - Contact standard field: `{{Contact.Field(C_EmailAddress)}}` | |
| - Contact custom field: `{{Contact.Field(C_Custom_Field_Name)}}` | |
| - Account field: `{{Account.Field(M_CompanyName)}}` | |
| - Activity field: `{{Activity.Type}}` | |
| Use `GET /api/bulk/2.0/contacts/fields` to discover available field statements. | |
| ## Authentication | |
| All endpoints require one of: | |
| - **HTTP Basic**: `Authorization: Basic base64(siteName\username:password)` | |
| - **OAuth 2.0 Bearer**: `Authorization: Bearer <access_token>` | |
| Your `siteName` and pod (`{instance}` server variable) are shown in your Eloqua login URL. | |
| Common pod values: `secure`, `s1`, `s2`, `s3`, `s4`, `p01`. | |
| ## Pagination (Application API) | |
| List endpoints use 1-based page numbers: | |
| - `count` — records per page (default 100, max 1000) | |
| - `page` — page number starting at 1 | |
| - Response includes `total` (total records matching filter) | |
| ## Search syntax | |
| The `search` parameter accepts Eloqua Lucene-style expressions: | |
| - `name=Acme*` — name starts with Acme | |
| - `emailAddress=*@acme.com` — email domain match | |
| - `updatedAt>='2024-01-01'` — date filter | |
| - Multiple conditions: `firstName=John* AND lastName=Smith*` | |
| contact: | |
| url: https://docs.oracle.com/en/cloud/saas/marketing/eloqua-rest-api/ | |
| license: | |
| name: Oracle Technology Network License | |
| url: https://www.oracle.com/downloads/licenses/oracle-technology-license-agreement.html | |
| externalDocs: | |
| description: Oracle Eloqua REST API endpoint reference | |
| url: https://docs.oracle.com/en/cloud/saas/marketing/eloqua-rest-api/rest-endpoints.html | |
| servers: | |
| - url: https://{instance}.eloqua.com | |
| description: Oracle Eloqua instance | |
| variables: | |
| instance: | |
| default: secure | |
| description: | | |
| Eloqua pod hostname prefix. Find yours in your Eloqua login URL. | |
| Common values: secure, s1, s2, s3, s4, p01. | |
| security: | |
| - basicAuth: [] | |
| - bearerAuth: [] | |
| tags: | |
| # ── Application API 1.0 ─────────────────────────────────────────────────── | |
| - name: Accounts (v1) | |
| description: "App API 1.0 · Account management" | |
| - name: Activities (v1) | |
| description: "App API 1.0 · Contact activity retrieval" | |
| - name: Contact Fields (v1) | |
| description: "App API 1.0 · Contact field definitions" | |
| - name: Contact Lists (v1) | |
| description: "App API 1.0 · Contact list management" | |
| - name: Contact Segments (v1) | |
| description: "App API 1.0 · Contact segment management" | |
| - name: Contacts (v1) | |
| description: "App API 1.0 · Contact data" | |
| - name: Content Sections (v1) | |
| description: "App API 1.0 · Reusable HTML content blocks for emails and landing pages" | |
| - name: Custom Object Data (v1) | |
| description: "App API 1.0 · Custom object data instances" | |
| - name: Custom Objects (v1) | |
| description: "App API 1.0 · Custom object schema definitions" | |
| - name: Email Folders (v1) | |
| description: "App API 1.0 · Email asset folder management" | |
| - name: Email Footers (v1) | |
| description: "App API 1.0 · Reusable email footer blocks" | |
| - name: Email Groups (v1) | |
| description: "App API 1.0 · Email groups (subscription categories)" | |
| - name: Email Headers (v1) | |
| description: "App API 1.0 · Reusable email header blocks" | |
| - name: Emails (v1) | |
| description: "App API 1.0 · Email asset management" | |
| - name: Form Data (v1) | |
| description: "App API 1.0 · Form submission data" | |
| - name: Forms (v1) | |
| description: "App API 1.0 · Web form asset management" | |
| - name: Images (v1) | |
| description: "App API 1.0 · Image asset management" | |
| - name: Landing Pages (v1) | |
| description: "App API 1.0 · Landing page management" | |
| - name: Microsites (v1) | |
| description: "App API 1.0 · Microsite (custom domain) management" | |
| - name: Option Lists (v1) | |
| description: "App API 1.0 · Dropdown option list management" | |
| - name: Users (v1) | |
| description: "App API 1.0 · Eloqua user account management" | |
| # ── Application API 2.0 ─────────────────────────────────────────────────── | |
| - name: Account Groups (v2) | |
| description: "App API 2.0 · Account group (segment) management" | |
| - name: Accounts (v2) | |
| description: "App API 2.0 · Account (company) data" | |
| - name: Activities (v2) | |
| description: "App API 2.0 · Contact activity retrieval by type" | |
| - name: Audit Logs (v2) | |
| description: "App API 2.0 · System audit log export" | |
| - name: Campaign Fields (v2) | |
| description: "App API 2.0 · Campaign custom field definitions" | |
| - name: Campaign Folders (v2) | |
| description: "App API 2.0 · Campaign folder management" | |
| - name: Campaigns (v2) | |
| description: "App API 2.0 · Marketing campaign management and activation" | |
| - name: Contact Filter Folders (v2) | |
| description: "App API 2.0 · Contact filter folder management" | |
| - name: Contact List Folders (v2) | |
| description: "App API 2.0 · Contact list folder management" | |
| - name: Contact Segment Folders (v2) | |
| description: "App API 2.0 · Contact segment folder management" | |
| - name: Contact Segments (v2) | |
| description: "App API 2.0 · Dynamic contact segment management" | |
| - name: Contacts (v2) | |
| description: "App API 2.0 · Contact data (preferred over v1)" | |
| - name: Countries (v2) | |
| description: "App API 2.0 · Country reference data" | |
| - name: Custom Object Data (v2) | |
| description: "App API 2.0 · Custom object instance data (individual records)" | |
| - name: Custom Objects (v2) | |
| description: "App API 2.0 · Custom object schema definitions" | |
| - name: Dedupe Rules (v2) | |
| description: "App API 2.0 · Contact deduplication rule configuration" | |
| - name: Email Deployment (v2) | |
| description: "App API 2.0 · Single-send email deployment" | |
| - name: Email Folders (v2) | |
| description: "App API 2.0 · Email asset folder management" | |
| - name: Emails (v2) | |
| description: "App API 2.0 · Email asset management with archive support" | |
| - name: Event Registrants (v2) | |
| description: "App API 2.0 · Event registration instance data" | |
| - name: Events (v2) | |
| description: "App API 2.0 · Event registration asset management" | |
| - name: External Activities (v2) | |
| description: "App API 2.0 · External (non-Eloqua) activity tracking" | |
| - name: External Asset Types (v2) | |
| description: "App API 2.0 · External asset type definitions" | |
| - name: External Assets (v2) | |
| description: "App API 2.0 · External asset management" | |
| - name: Form Data (v2) | |
| description: "App API 2.0 · Form submission data with batch support" | |
| - name: Form Folders (v2) | |
| description: "App API 2.0 · Form folder management" | |
| - name: Forms (v2) | |
| description: "App API 2.0 · Web form asset management with archive support" | |
| - name: Hyperlink Folders (v2) | |
| description: "App API 2.0 · Hyperlink folder management" | |
| - name: Image Folders (v2) | |
| description: "App API 2.0 · Image folder management" | |
| - name: Landing Pages (v2) | |
| description: "App API 2.0 · Landing page management" | |
| - name: Lookup Tables (v2) | |
| description: "App API 2.0 · Lookup table and entry management" | |
| - name: Programs (v2) | |
| description: "App API 2.0 · Contact program (drip workflow) management and control" | |
| - name: SMS (v2) | |
| description: "App API 2.0 · SMS message asset management" | |
| - name: SMS Codes (v2) | |
| description: "App API 2.0 · SMS sender code reference" | |
| - name: SMS Folders (v2) | |
| description: "App API 2.0 · SMS asset folder management" | |
| - name: SMS Invalid Keyword Messages (v2) | |
| description: "App API 2.0 · SMS invalid keyword auto-response messages" | |
| - name: SMS Keywords (v2) | |
| description: "App API 2.0 · SMS opt-in/opt-out keyword management" | |
| - name: SMS Subscription (v2) | |
| description: "App API 2.0 · SMS contact subscription management" | |
| - name: Security Groups (v2) | |
| description: "App API 2.0 · User security group management" | |
| - name: Signature Rule Mappings (v2) | |
| description: "App API 2.0 · Email signature rule field mappings" | |
| - name: Signature Rules (v2) | |
| description: "App API 2.0 · Email sender signature rules" | |
| - name: Users (v2) | |
| description: "App API 2.0 · Eloqua user account management" | |
| - name: Visitor Profile Fields (v2) | |
| description: "App API 2.0 · Anonymous visitor profile field definitions" | |
| - name: Visitors (v2) | |
| description: "App API 2.0 · Anonymous website visitor data" | |
| # ── Bulk API 2.0 ────────────────────────────────────────────────────────── | |
| - name: Bulk Accounts | |
| description: "Bulk API 2.0 · Async account exports, imports, and sync actions. Use the 4-step workflow: define → trigger sync → poll → fetch." | |
| - name: Bulk Activities | |
| description: "Bulk API 2.0 · Async activity exports and imports" | |
| - name: Bulk Campaign Responses | |
| description: "Bulk API 2.0 · Async campaign response exports and imports" | |
| - name: Bulk Campaigns | |
| description: "Bulk API 2.0 · Campaign field reference for bulk definitions" | |
| - name: Bulk Contacts | |
| description: "Bulk API 2.0 · Async contact exports, imports, and sync actions. The primary mechanism for large-scale contact data operations." | |
| - name: Bulk Custom Objects | |
| description: "Bulk API 2.0 · Async custom object exports, imports, and sync actions" | |
| - name: Bulk Email Addresses | |
| description: "Bulk API 2.0 · Async email address unsubscribe/bounce imports" | |
| - name: Bulk Email Groups | |
| description: "Bulk API 2.0 · Email group reference for bulk definitions" | |
| - name: Bulk Events | |
| description: "Bulk API 2.0 · Async event registration exports and imports" | |
| - name: Bulk Exports | |
| description: "Bulk API 2.0 · Global listing of all export definitions across all resource types" | |
| - name: Bulk Imports | |
| description: "Bulk API 2.0 · Global listing of all import definitions and priority queues" | |
| - name: Bulk Opportunities | |
| description: "Bulk API 2.0 · Async opportunity and opportunity-contact link imports" | |
| - name: Bulk Phone Numbers | |
| description: "Bulk API 2.0 · Async phone number imports" | |
| - name: Bulk Sync Actions | |
| description: "Bulk API 2.0 · Global listing of all sync action definitions" | |
| - name: Bulk Syncs | |
| description: "Bulk API 2.0 · Sync execution engine — trigger, poll, and retrieve results for any bulk operation" | |
| # ── OData Reporting API 1.0 ─────────────────────────────────────────────── | |
| - name: Reporting Account Activity | |
| description: "OData API 1.0 · Read-only account activity and engagement reporting" | |
| - name: Reporting Activity Details | |
| description: "OData API 1.0 · Read-only detailed contact activity data (clicks, opens, bounces, form submissions)" | |
| components: | |
| securitySchemes: | |
| basicAuth: | |
| type: http | |
| scheme: basic | |
| description: | | |
| HTTP Basic authentication. Encode `siteName\username:password` in Base64. | |
| Example header: `Authorization: Basic c2l0ZVxhZG1pbjpwYXNzd29yZA==` | |
| bearerAuth: | |
| type: http | |
| scheme: bearer | |
| description: | | |
| OAuth 2.0 access token obtained via Eloqua's OAuth flow. | |
| Example header: `Authorization: Bearer eyJ...` | |
| parameters: | |
| pathId: | |
| name: id | |
| in: path | |
| required: true | |
| description: Numeric ID of the resource. | |
| schema: | |
| type: integer | |
| format: int64 | |
| minimum: 1 | |
| pathParentId: | |
| name: parentId | |
| in: path | |
| required: true | |
| description: Numeric ID of the parent resource (e.g. the custom object or event definition ID). | |
| schema: | |
| type: integer | |
| format: int64 | |
| minimum: 1 | |
| pathRuleId: | |
| name: ruleId | |
| in: path | |
| required: true | |
| description: Numeric ID of the deduplication rule. | |
| schema: | |
| type: integer | |
| format: int64 | |
| minimum: 1 | |
| pathFormId: | |
| name: formId | |
| in: path | |
| required: true | |
| description: Numeric ID of the form asset. | |
| schema: | |
| type: integer | |
| format: int64 | |
| minimum: 1 | |
| pathFormSubmitJobId: | |
| name: formSubmitJobId | |
| in: path | |
| required: true | |
| description: Job ID returned from an async form-data export request. | |
| schema: | |
| type: string | |
| pathBatchId: | |
| name: batchId | |
| in: path | |
| required: true | |
| description: Batch ID returned from a batch form submission. | |
| schema: | |
| type: string | |
| pathBatchCorrelationId: | |
| name: batchCorrelationId | |
| in: path | |
| required: true | |
| description: Correlation ID used to track a specific batch form submission. | |
| schema: | |
| type: string | |
| pathRowId: | |
| name: rowId | |
| in: path | |
| required: true | |
| description: Numeric row ID of an individual form data submission record. | |
| schema: | |
| type: integer | |
| format: int64 | |
| minimum: 1 | |
| pathLookupTableId: | |
| name: lookupTableId | |
| in: path | |
| required: true | |
| description: Numeric ID of the lookup table. | |
| schema: | |
| type: integer | |
| format: int64 | |
| minimum: 1 | |
| pathElementId: | |
| name: elementId | |
| in: path | |
| required: true | |
| description: Numeric ID of the lookup table entry. | |
| schema: | |
| type: integer | |
| format: int64 | |
| minimum: 1 | |
| queryCount: | |
| name: count | |
| in: query | |
| required: false | |
| description: | | |
| Maximum number of records to return per page. Default: 100. Max: 1000. | |
| Use with `page` to paginate through large result sets. | |
| schema: | |
| type: integer | |
| default: 100 | |
| minimum: 1 | |
| maximum: 1000 | |
| queryPage: | |
| name: page | |
| in: query | |
| required: false | |
| description: | | |
| 1-based page number. Use with `count` to paginate. | |
| Example: page=2&count=100 returns records 101–200. | |
| schema: | |
| type: integer | |
| default: 1 | |
| minimum: 1 | |
| querySearch: | |
| name: search | |
| in: query | |
| required: false | |
| description: | | |
| Lucene-style filter expression. Examples: | |
| - `name=Acme*` — name starts with Acme | |
| - `emailAddress=*@acme.com` — email domain match | |
| - `firstName=John* AND company=Acme*` — multiple conditions | |
| Omit to return all records (subject to count/page limits). | |
| schema: | |
| type: string | |
| queryOrderBy: | |
| name: orderBy | |
| in: query | |
| required: false | |
| description: | | |
| Field to sort results by, optionally followed by direction. | |
| Examples: `name ASC`, `updatedAt DESC`, `id ASC`. | |
| schema: | |
| type: string | |
| queryDepth: | |
| name: depth | |
| in: query | |
| required: false | |
| description: | | |
| Controls how much detail is returned for each resource: | |
| - `minimal` — id and name only (fastest, lowest payload) | |
| - `partial` — common fields, excludes large/nested objects | |
| - `complete` — all fields including custom field values and nested objects (default) | |
| Use `minimal` or `partial` when fetching lists for performance. | |
| schema: | |
| type: string | |
| enum: [minimal, partial, complete] | |
| default: complete | |
| queryLastUpdatedAt: | |
| name: lastUpdatedAt | |
| in: query | |
| required: false | |
| description: | | |
| Unix timestamp (seconds since epoch). When set, returns only records | |
| updated after this time. Useful for incremental sync patterns. | |
| Example: 1704067200 (2024-01-01T00:00:00Z) | |
| schema: | |
| type: integer | |
| format: int64 | |
| bulkOffset: | |
| name: offset | |
| in: query | |
| required: false | |
| description: | | |
| Zero-based record offset for paginating bulk data results. | |
| Increment by `limit` on each request until `hasMore` is false. | |
| schema: | |
| type: integer | |
| default: 0 | |
| minimum: 0 | |
| bulkLimit: | |
| name: limit | |
| in: query | |
| required: false | |
| description: | | |
| Maximum records to return per bulk data request. Max: 50000. | |
| Use the largest value your client can handle to minimise round-trips. | |
| schema: | |
| type: integer | |
| default: 1000 | |
| minimum: 1 | |
| maximum: 50000 | |
| schemas: | |
| Resource: | |
| type: object | |
| description: | | |
| Base fields shared by all Eloqua assets and data records. | |
| Custom field values are in the `fieldValues` array for typed resources. | |
| properties: | |
| id: | |
| type: string | |
| readOnly: true | |
| description: Unique numeric ID assigned by Eloqua (returned as a string). | |
| name: | |
| type: string | |
| description: Display name of the resource. | |
| description: | |
| type: string | |
| description: Optional long-form description. | |
| type: | |
| type: string | |
| readOnly: true | |
| description: Eloqua object type identifier (e.g. "Contact", "Email"). | |
| folderId: | |
| type: string | |
| description: ID of the folder this asset belongs to. | |
| createdAt: | |
| type: string | |
| readOnly: true | |
| description: Unix timestamp of creation. | |
| createdBy: | |
| type: string | |
| readOnly: true | |
| description: ID of the user who created this resource. | |
| updatedAt: | |
| type: string | |
| readOnly: true | |
| description: Unix timestamp of the last update. | |
| updatedBy: | |
| type: string | |
| readOnly: true | |
| description: ID of the user who last updated this resource. | |
| permissions: | |
| type: array | |
| items: | |
| type: string | |
| readOnly: true | |
| description: List of permission strings for the current user. | |
| FieldValue: | |
| type: object | |
| description: A single custom field value on a contact, account, or custom object record. | |
| properties: | |
| id: | |
| type: string | |
| description: The field definition ID (matches the id from the contact/account fields endpoint). | |
| value: | |
| type: string | |
| description: | | |
| The field value, always encoded as a string regardless of field type. | |
| Dates use Unix timestamp strings. Booleans use "true"/"false". | |
| type: | |
| type: string | |
| readOnly: true | |
| description: Field type (e.g. "FieldValue"). | |
| Contact: | |
| description: | | |
| An Eloqua contact record representing an individual person. | |
| The emailAddress field is the primary identifier and must be unique per Eloqua instance. | |
| Custom fields are in the fieldValues array — use GET /api/rest/2.0/assets/contact/fields | |
| to discover available field IDs and names. | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| firstName: | |
| type: string | |
| description: Contact's first name. | |
| lastName: | |
| type: string | |
| description: Contact's last name. | |
| emailAddress: | |
| type: string | |
| format: email | |
| description: Primary email address. Must be unique within the Eloqua instance. | |
| title: | |
| type: string | |
| description: Job title. | |
| company: | |
| type: string | |
| description: Current employer / company name. | |
| businessPhone: | |
| type: string | |
| description: Primary business phone number. | |
| mobilePhone: | |
| type: string | |
| description: Mobile phone number. | |
| fax: | |
| type: string | |
| description: Fax number. | |
| address1: | |
| type: string | |
| description: Street address line 1. | |
| address2: | |
| type: string | |
| description: Street address line 2. | |
| city: | |
| type: string | |
| province: | |
| type: string | |
| description: State or province. | |
| postalCode: | |
| type: string | |
| country: | |
| type: string | |
| isSubscribed: | |
| type: string | |
| description: Email subscription status ("Yes", "No"). | |
| isBounced: | |
| type: string | |
| description: Whether the contact's email has hard-bounced ("Yes", "No"). | |
| accountId: | |
| type: string | |
| description: ID of the linked Account record. | |
| fieldValues: | |
| type: array | |
| description: Custom field values. Each item maps a field ID to its value. | |
| items: | |
| $ref: '#/components/schemas/FieldValue' | |
| Account: | |
| description: | | |
| An Eloqua account record representing a company or organisation. | |
| Accounts can be linked to contacts via the contact's accountId field. | |
| Custom fields are in the fieldValues array — use GET /api/REST/1.0/assets/account/fields | |
| (Bulk API) to discover available field IDs. | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| companyName: | |
| type: string | |
| description: Primary company name. Acts as the display name. | |
| industry: | |
| type: string | |
| description: Industry category. | |
| annualRevenue: | |
| type: string | |
| description: Annual revenue (stored as string). | |
| numberOfEmployees: | |
| type: string | |
| description: Employee count (stored as string). | |
| address1: | |
| type: string | |
| city: | |
| type: string | |
| province: | |
| type: string | |
| postalCode: | |
| type: string | |
| country: | |
| type: string | |
| website: | |
| type: string | |
| primaryPhone: | |
| type: string | |
| fieldValues: | |
| type: array | |
| items: | |
| $ref: '#/components/schemas/FieldValue' | |
| Email: | |
| description: | | |
| An Eloqua email asset. Emails must belong to an emailGroup (subscription category). | |
| HTML content is set via htmlContent.html. Use the fromName/fromEmail fields to | |
| control the sender — these can reference merge fields (e.g. {{Sender.Name}}). | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| subject: | |
| type: string | |
| description: Email subject line. Supports merge fields (e.g. "Hi {{Contact.FirstName}}"). | |
| htmlContent: | |
| type: object | |
| description: HTML body content wrapper. | |
| properties: | |
| type: | |
| type: string | |
| enum: [RawHtmlContent, EncodedHtmlContent] | |
| description: Use RawHtmlContent for standard HTML. | |
| html: | |
| type: string | |
| description: Full HTML source of the email body. | |
| plainTextContent: | |
| type: object | |
| description: Plain-text fallback content. | |
| properties: | |
| type: | |
| type: string | |
| content: | |
| type: string | |
| fromName: | |
| type: string | |
| description: "Sender display name. Supports merge fields. Example: {{Sender.Name}}" | |
| fromEmail: | |
| type: string | |
| description: "Sender email address. Example: noreply@acme.com" | |
| replyToName: | |
| type: string | |
| description: Reply-to display name. | |
| replyToEmail: | |
| type: string | |
| description: Reply-to email address. | |
| bouncebackEmail: | |
| type: string | |
| description: Address to receive bounce notifications. | |
| emailGroupId: | |
| type: string | |
| description: | | |
| ID of the email group (subscription category) this email belongs to. | |
| Required — contacts can unsubscribe at the group level. | |
| isTracked: | |
| type: boolean | |
| description: Whether email opens and clicks are tracked (default true). | |
| isPlainTextEditable: | |
| type: boolean | |
| Campaign: | |
| description: | | |
| An Eloqua marketing campaign. Campaigns are either Simple (one email blast) | |
| or Multi-step (orchestrated sequence). A campaign must be in draft before | |
| it can be activated. Activating a campaign sends emails — verify carefully | |
| before calling the activate endpoint. | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| type: | |
| type: string | |
| enum: [Simple, Multi-step] | |
| description: Campaign type. Multi-step campaigns support decision steps and wait steps. | |
| startAt: | |
| type: string | |
| description: Campaign start date as Unix timestamp string. | |
| endAt: | |
| type: string | |
| description: Campaign end date as Unix timestamp string. | |
| actualCost: | |
| type: number | |
| description: Actual spend tracked against this campaign. | |
| budgetedCost: | |
| type: number | |
| description: Planned budget for this campaign. | |
| folderId: | |
| type: string | |
| currentStatus: | |
| type: string | |
| readOnly: true | |
| enum: [Draft, Active, Completed, Cancelled] | |
| elements: | |
| type: array | |
| description: Campaign steps (email sends, decision steps, wait steps). | |
| items: | |
| type: object | |
| additionalProperties: true | |
| Form: | |
| description: | | |
| An Eloqua web form asset. Forms capture contact data and trigger processing steps | |
| (e.g. update contact, add to list, notify user). Embed forms in landing pages | |
| or external sites using the generated embed code. | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| htmlName: | |
| type: string | |
| description: Internal HTML name used in embed code. Alphanumeric and underscores only. | |
| customCSS: | |
| type: string | |
| description: Custom CSS styles applied to the form. | |
| elements: | |
| type: array | |
| description: Form field elements (text inputs, dropdowns, hidden fields, etc.). | |
| items: | |
| type: object | |
| additionalProperties: true | |
| processingSteps: | |
| type: array | |
| description: | | |
| Post-submission processing steps executed in order. | |
| Examples: Update Contact, Add to List, Send Notification Email. | |
| items: | |
| type: object | |
| additionalProperties: true | |
| style: | |
| type: object | |
| additionalProperties: true | |
| LandingPage: | |
| description: | | |
| An Eloqua-hosted landing page. Landing pages are associated with a microsite | |
| (custom domain) and accessible via their relativeUrl. They can contain | |
| embedded forms and personalisation merge fields. | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| htmlContent: | |
| type: object | |
| properties: | |
| type: | |
| type: string | |
| html: | |
| type: string | |
| description: Full HTML source of the landing page. | |
| relativeUrl: | |
| type: string | |
| description: URL path relative to the microsite root (e.g. "/thank-you"). | |
| micrositeId: | |
| type: string | |
| description: ID of the microsite (custom domain) hosting this page. | |
| deployedAt: | |
| type: string | |
| readOnly: true | |
| description: Unix timestamp of last deployment. | |
| style: | |
| type: object | |
| additionalProperties: true | |
| CustomObject: | |
| description: | | |
| An Eloqua custom object definition — a user-defined data table that can be | |
| linked to contacts. Each custom object has fields and stores data as instances. | |
| Use the Custom Object Data endpoints to manage individual records. | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| fields: | |
| type: array | |
| description: Field definitions for this custom object. | |
| items: | |
| $ref: '#/components/schemas/CustomObjectField' | |
| displayNameFieldId: | |
| type: string | |
| description: ID of the field used as the display name for instances. | |
| uniqueCodeFieldId: | |
| type: string | |
| description: ID of the field used as the unique identifier for instances. | |
| CustomObjectField: | |
| type: object | |
| description: A field definition within a custom object schema. | |
| properties: | |
| id: | |
| type: string | |
| readOnly: true | |
| name: | |
| type: string | |
| internalName: | |
| type: string | |
| description: System name used in Bulk API field statements. | |
| dataType: | |
| type: string | |
| enum: [text, largeText, numeric, date, dateTime] | |
| isRequired: | |
| type: boolean | |
| maximumLength: | |
| type: integer | |
| description: Max character length (for text fields). | |
| User: | |
| description: An Eloqua user account with login credentials and role permissions. | |
| allOf: | |
| - $ref: '#/components/schemas/Resource' | |
| - type: object | |
| properties: | |
| loginName: | |
| type: string | |
| description: Unique login username. | |
| emailAddress: | |
| type: string | |
| format: email | |
| isEnabled: | |
| type: boolean | |
| description: Whether the user can log in. | |
| capabilities: | |
| type: array | |
| items: | |
| type: string | |
| description: List of permission capability strings. | |
| defaultAccountViewId: | |
| type: string | |
| preferredTimezone: | |
| type: string | |
| description: "IANA timezone name (e.g. America/New_York)." | |
| preferredLanguage: | |
| type: string | |
| ResourceList: | |
| type: object | |
| properties: | |
| elements: | |
| type: array | |
| items: | |
| $ref: '#/components/schemas/Resource' | |
| total: | |
| type: integer | |
| readOnly: true | |
| description: Total number of records matching the search filter (across all pages). | |
| page: | |
| type: integer | |
| readOnly: true | |
| pageSize: | |
| type: integer | |
| readOnly: true | |
| FolderContents: | |
| type: object | |
| properties: | |
| elements: | |
| type: array | |
| items: | |
| $ref: '#/components/schemas/Resource' | |
| total: | |
| type: integer | |
| MembershipList: | |
| type: object | |
| properties: | |
| elements: | |
| type: array | |
| items: | |
| type: object | |
| properties: | |
| id: | |
| type: string | |
| name: | |
| type: string | |
| type: | |
| type: string | |
| total: | |
| type: integer | |
| ErrorResponse: | |
| type: object | |
| properties: | |
| status: | |
| type: integer | |
| description: HTTP status code. | |
| title: | |
| type: string | |
| description: Short error title. | |
| detail: | |
| type: string | |
| description: Human-readable error explanation. | |
| type: | |
| type: string | |
| description: Error type URI. | |
| validationErrors: | |
| type: array | |
| items: | |
| type: object | |
| properties: | |
| field: | |
| type: string | |
| requirement: | |
| type: string | |
| BulkDefinition: | |
| type: object | |
| description: | | |
| A bulk export, import, or sync action definition. | |
| The `fields` map uses aliases (your chosen names) as keys and Eloqua field | |
| statements as values. Example: | |
| fields: | |
| Email: "{{Contact.Field(C_EmailAddress)}}" | |
| FirstName: "{{Contact.Field(C_FirstName)}}" | |
| Use GET /api/bulk/2.0/contacts/fields to discover available field statements. | |
| properties: | |
| name: | |
| type: string | |
| description: Human-readable name for this definition. | |
| fields: | |
| type: object | |
| additionalProperties: | |
| type: string | |
| description: Map of alias → Eloqua field statement. | |
| filter: | |
| type: string | |
| description: | | |
| Eloqua filter expression restricting which records are exported. | |
| Example: "{{Contact.Field(C_EmailAddress)}}='*@acme.com'" | |
| Omit to export all records. | |
| identifierFieldName: | |
| type: string | |
| description: | | |
| (Imports) The alias of the field used to match existing records. | |
| Typically "Email" or a unique ID field alias. | |
| isSyncTriggeredOnImport: | |
| type: boolean | |
| description: If true, Eloqua triggers a CRM sync after this import completes. | |
| uri: | |
| type: string | |
| readOnly: true | |
| description: | | |
| The URI of this definition, used as the `syncedInstanceUri` body field | |
| when triggering a sync via POST /api/bulk/2.0/syncs. | |
| createdAt: | |
| type: string | |
| readOnly: true | |
| updatedAt: | |
| type: string | |
| readOnly: true | |
| status: | |
| type: string | |
| readOnly: true | |
| BulkSync: | |
| type: object | |
| description: | | |
| A bulk sync execution record. Create one via POST /api/bulk/2.0/syncs to | |
| trigger an export, import, or sync action. Poll GET /api/bulk/2.0/syncs/{id} | |
| until status reaches a terminal state. | |
| properties: | |
| syncedInstanceUri: | |
| type: string | |
| description: URI of the export/import/syncAction definition to execute. | |
| status: | |
| type: string | |
| enum: [pending, active, success, warning, error] | |
| description: | | |
| Terminal states: success (all records processed), warning (partial — | |
| check /logs for details), error (failed — check /logs for cause). | |
| createdAt: | |
| type: string | |
| readOnly: true | |
| startedAt: | |
| type: string | |
| readOnly: true | |
| endedAt: | |
| type: string | |
| readOnly: true | |
| uri: | |
| type: string | |
| readOnly: true | |
| description: URI of this sync, e.g. "/syncs/42". Extract the ID for polling. | |
| BulkSyncLog: | |
| type: object | |
| description: Log messages from a sync execution. Check this after warning/error status. | |
| properties: | |
| count: | |
| type: integer | |
| items: | |
| type: array | |
| items: | |
| type: object | |
| properties: | |
| severity: | |
| type: string | |
| enum: [information, warning, error] | |
| statusCode: | |
| type: string | |
| description: Machine-readable error code. | |
| message: | |
| type: string | |
| description: Human-readable error detail. | |
| count: | |
| type: integer | |
| description: Number of records affected by this log entry. | |
| BulkData: | |
| type: object | |
| description: | | |
| Paged bulk data result. Paginate by incrementing `offset` by `limit` | |
| on each request until `hasMore` is false. | |
| properties: | |
| count: | |
| type: integer | |
| description: Number of records in this response page. | |
| hasMore: | |
| type: boolean | |
| description: True if more records remain beyond this page. | |
| items: | |
| type: array | |
| items: | |
| type: object | |
| additionalProperties: true | |
| description: Array of records, each an object with the aliased field names as keys. | |
| totalResults: | |
| type: integer | |
| description: Total records available (may be null for large exports). | |
| BulkFieldList: | |
| type: object | |
| description: List of available fields for use in bulk definition field statements. | |
| properties: | |
| count: | |
| type: integer | |
| items: | |
| type: array | |
| items: | |
| type: object | |
| properties: | |
| name: | |
| type: string | |
| description: Human-readable field name. | |
| internalName: | |
| type: string | |
| description: Internal system name. | |
| dataType: | |
| type: string | |
| description: "Field data type (e.g. text, numeric, date)." | |
| hasReadOnlyConstraint: | |
| type: boolean | |
| description: If true, the field cannot be imported/written. | |
| uri: | |
| type: string | |
| description: Field statement URI to use in bulk definition fields map. | |
| BulkList: | |
| type: object | |
| properties: | |
| count: | |
| type: integer | |
| items: | |
| type: array | |
| items: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| ODataCollection: | |
| type: object | |
| properties: | |
| "@odata.context": | |
| type: string | |
| "@odata.count": | |
| type: integer | |
| value: | |
| type: array | |
| items: | |
| type: object | |
| additionalProperties: true | |
| ODataEntity: | |
| type: object | |
| properties: | |
| "@odata.context": | |
| type: string | |
| additionalProperties: true | |
| responses: | |
| Resource: | |
| description: Single resource | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| ResourceCreated: | |
| description: Resource created successfully | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| ResourceList: | |
| description: Paged list of resources | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/ResourceList' | |
| FolderContents: | |
| description: Folder contents | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/FolderContents' | |
| MembershipList: | |
| description: Membership list | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/MembershipList' | |
| NoContent: | |
| description: Success — no body returned | |
| Error: | |
| description: Error response | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/ErrorResponse' | |
| BulkDefinition: | |
| description: Bulk export/import/syncAction definition | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| BulkList: | |
| description: List of bulk definitions | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkList' | |
| BulkSync: | |
| description: Sync execution record | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkSync' | |
| BulkSyncList: | |
| description: List of sync executions | |
| content: | |
| application/json: | |
| schema: | |
| type: object | |
| properties: | |
| count: | |
| type: integer | |
| items: | |
| type: array | |
| items: | |
| $ref: '#/components/schemas/BulkSync' | |
| BulkSyncLog: | |
| description: Sync log entries | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkSyncLog' | |
| BulkData: | |
| description: Paged bulk data records | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| BulkFieldList: | |
| description: Available field statements | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkFieldList' | |
| ODataCollection: | |
| description: OData entity collection | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/ODataCollection' | |
| ODataEntity: | |
| description: OData single entity | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/ODataEntity' | |
| paths: | |
| /api/REST/1.0/data/account: | |
| post: | |
| tags: ["Accounts (v1)"] | |
| operationId: createAccountV1 | |
| summary: Create an account | |
| description: | | |
| Create a new account (company) record. Returns the created account with its | |
| system-assigned id. Prefer API 2.0 for new integrations. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Account' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/accounts: | |
| get: | |
| tags: ["Accounts (v1)"] | |
| operationId: listAccountsV1 | |
| summary: List accounts | |
| description: | | |
| Retrieve a paginated list of account records. Filter with Lucene syntax via | |
| `search` (e.g. `companyName=Acme*`). Use `depth=minimal` for lightweight | |
| id+name responses. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| - $ref: '#/components/parameters/queryLastUpdatedAt' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/account/{id}: | |
| get: | |
| tags: ["Accounts (v1)"] | |
| operationId: getAccountV1 | |
| summary: Get an account | |
| description: | | |
| Retrieve a single account by its numeric ID. Use `depth=complete` to include | |
| all custom field values. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Accounts (v1)"] | |
| operationId: updateAccountV1 | |
| summary: Update an account | |
| description: | | |
| Update an account's fields. Submit the full account object with modified | |
| values. Returns the updated account. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Account' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Accounts (v1)"] | |
| operationId: deleteAccountV1 | |
| x-destructive: true | |
| summary: Delete an account | |
| description: | | |
| **Permanently delete** an account record. This action cannot be undone. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/activities/contact/{id}: | |
| get: | |
| tags: ["Activities (v1)"] | |
| operationId: listContactActivitiesV1 | |
| summary: List contact activities | |
| description: | | |
| Retrieve a list of tracked activities for a specific contact (email opens, | |
| clicks, form submits, page views, etc.). Results are limited to activities | |
| within the retention window. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/field: | |
| post: | |
| tags: ["Contact Fields (v1)"] | |
| operationId: createContactFieldV1 | |
| summary: Create a contact field | |
| description: | | |
| Create a new custom contact field definition. Returns the field with its | |
| assigned id, which is used in fieldValues arrays on contact records. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/fields: | |
| get: | |
| tags: ["Contact Fields (v1)"] | |
| operationId: listContactFieldsV1 | |
| summary: List contact fields | |
| description: | | |
| List all contact field definitions (standard and custom). Use this to discover | |
| field IDs needed for reading/writing contact fieldValues. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/field/{id}: | |
| get: | |
| tags: ["Contact Fields (v1)"] | |
| operationId: getContactFieldV1 | |
| summary: Get a contact field | |
| description: | | |
| Retrieve a single contact field definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Contact Fields (v1)"] | |
| operationId: updateContactFieldV1 | |
| summary: Update a contact field | |
| description: | | |
| Update a contact field definition (name, display settings). Field type cannot | |
| be changed after creation. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Contact Fields (v1)"] | |
| operationId: deleteContactFieldV1 | |
| x-destructive: true | |
| summary: Delete a contact field | |
| description: | | |
| **Permanently delete** a custom contact field and all its data. This action | |
| cannot be undone. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/list: | |
| post: | |
| tags: ["Contact Lists (v1)"] | |
| operationId: createContactListV1 | |
| summary: Create a contact list | |
| description: | | |
| Create a new static contact list. Contacts are added/removed manually or via | |
| form processing steps. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/lists: | |
| get: | |
| tags: ["Contact Lists (v1)"] | |
| operationId: listContactListsV1 | |
| summary: List contact lists | |
| description: | | |
| List all contact lists in the account. Use for discovering list IDs needed by | |
| campaign targeting and form processing. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/list/{id}: | |
| get: | |
| tags: ["Contact Lists (v1)"] | |
| operationId: getContactListV1 | |
| summary: Get a contact list | |
| description: | | |
| Retrieve a contact list by ID, including its membership count. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Contact Lists (v1)"] | |
| operationId: updateContactListV1 | |
| summary: Update a contact list | |
| description: | | |
| Update a contact list's name or description. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Contact Lists (v1)"] | |
| operationId: deleteContactListV1 | |
| x-destructive: true | |
| summary: Delete a contact list | |
| description: | | |
| **Permanently delete** a contact list. Contacts in the list are not deleted. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/segment: | |
| post: | |
| tags: ["Contact Segments (v1)"] | |
| operationId: createContactSegmentV1 | |
| summary: Create a contact segment | |
| description: | | |
| Create a new dynamic contact segment with filter criteria. Segments auto-update | |
| as contacts match/unmatch the criteria. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/segments: | |
| get: | |
| tags: ["Contact Segments (v1)"] | |
| operationId: listContactSegmentsV1 | |
| summary: List contact segments | |
| description: | | |
| List all contact segments. Returns segment names and IDs for use in campaign | |
| targeting. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contact/segment/{id}: | |
| get: | |
| tags: ["Contact Segments (v1)"] | |
| operationId: getContactSegmentV1 | |
| summary: Get a contact segment | |
| description: | | |
| Retrieve a contact segment by ID, including its filter criteria. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Contact Segments (v1)"] | |
| operationId: updateContactSegmentV1 | |
| summary: Update a contact segment | |
| description: | | |
| Update a segment's name, description, or filter criteria. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Contact Segments (v1)"] | |
| operationId: deleteContactSegmentV1 | |
| x-destructive: true | |
| summary: Delete a contact segment | |
| description: | | |
| **Permanently delete** a contact segment. Contacts are not deleted. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/contact: | |
| post: | |
| tags: ["Contacts (v1)"] | |
| operationId: createContactV1 | |
| summary: Create a contact | |
| description: | | |
| Create a new contact record. The emailAddress must be unique within the Eloqua | |
| instance. Returns the created contact with its system-assigned id. Prefer API | |
| 2.0 for new integrations. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Contact' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/contacts: | |
| get: | |
| tags: ["Contacts (v1)"] | |
| operationId: listContactsV1 | |
| summary: List contacts | |
| description: | | |
| Retrieve a paginated list of contacts. Filter with Lucene syntax | |
| (e.g. `emailAddress=*@acme.com`). Use `depth=minimal` for id+name only. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| - $ref: '#/components/parameters/queryLastUpdatedAt' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/contact/{id}: | |
| get: | |
| tags: ["Contacts (v1)"] | |
| operationId: getContactV1 | |
| summary: Get a contact | |
| description: | | |
| Retrieve a single contact by ID. Use `depth=complete` to include all custom | |
| field values in the fieldValues array. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Contacts (v1)"] | |
| operationId: updateContactV1 | |
| summary: Update a contact | |
| description: | | |
| Update a contact's fields. The emailAddress cannot be changed to one already | |
| used by another contact. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Contact' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Contacts (v1)"] | |
| operationId: deleteContactV1 | |
| x-destructive: true | |
| summary: Delete a contact | |
| description: | | |
| **Permanently delete** a contact record and all associated activity history. | |
| This action cannot be undone. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contentSection: | |
| post: | |
| tags: ["Content Sections (v1)"] | |
| operationId: createContentSectionV1 | |
| summary: Create a content section | |
| description: | | |
| Create a reusable HTML content block that can be embedded in emails and | |
| landing pages. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contentSections: | |
| get: | |
| tags: ["Content Sections (v1)"] | |
| operationId: listContentSectionsV1 | |
| summary: List content sections | |
| description: | | |
| List all content sections in the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/contentSection/{id}: | |
| get: | |
| tags: ["Content Sections (v1)"] | |
| operationId: getContentSectionV1 | |
| summary: Get a content section | |
| description: | | |
| Retrieve a content section by ID, including its HTML source. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Content Sections (v1)"] | |
| operationId: updateContentSectionV1 | |
| summary: Update a content section | |
| description: | | |
| Update a content section's HTML or name. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Content Sections (v1)"] | |
| operationId: deleteContentSectionV1 | |
| x-destructive: true | |
| summary: Delete a content section | |
| description: | | |
| **Permanently delete** a content section. Emails/pages referencing it will be | |
| affected. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/customObject/{id}: | |
| post: | |
| tags: ["Custom Object Data (v1)"] | |
| operationId: createCustomObjectDataV1 | |
| summary: Create a custom object record | |
| description: | | |
| Create a new data instance (record) in the custom object identified by {id}. | |
| Returns the created instance. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: ["Custom Object Data (v1)"] | |
| operationId: getCustomObjectDataV1 | |
| summary: Get custom object records | |
| description: | | |
| Retrieve data instances from a custom object. Returns a list of records. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/customObject: | |
| post: | |
| tags: ["Custom Objects (v1)"] | |
| operationId: createCustomObjectV1 | |
| summary: Create a custom object | |
| description: | | |
| Create a new custom object schema definition including its field structure. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/CustomObject' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/customObjects: | |
| get: | |
| tags: ["Custom Objects (v1)"] | |
| operationId: listCustomObjectsV1 | |
| summary: List custom objects | |
| description: | | |
| List all custom object definitions in the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/customObject/{id}: | |
| get: | |
| tags: ["Custom Objects (v1)"] | |
| operationId: getCustomObjectV1 | |
| summary: Get a custom object | |
| description: | | |
| Retrieve a custom object schema definition by ID, including its field | |
| definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Custom Objects (v1)"] | |
| operationId: updateCustomObjectV1 | |
| summary: Update a custom object | |
| description: | | |
| Update a custom object's schema (name or description). Field changes require | |
| separate field management. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/CustomObject' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Custom Objects (v1)"] | |
| operationId: deleteCustomObjectV1 | |
| x-destructive: true | |
| summary: Delete a custom object | |
| description: | | |
| **Permanently delete** a custom object definition and ALL its data. This action | |
| cannot be undone. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/folder: | |
| post: | |
| tags: ["Email Folders (v1)"] | |
| operationId: createEmailFolderV1 | |
| summary: Create an email folder | |
| description: | | |
| Create a new folder for organising email assets. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/folders: | |
| get: | |
| tags: ["Email Folders (v1)"] | |
| operationId: listEmailFoldersV1 | |
| summary: List email folders | |
| description: | | |
| List all email folders in the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/folder/{id}: | |
| get: | |
| tags: ["Email Folders (v1)"] | |
| operationId: getEmailFolderV1 | |
| summary: Get an email folder | |
| description: | | |
| Retrieve an email folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Email Folders (v1)"] | |
| operationId: updateEmailFolderV1 | |
| summary: Update an email folder | |
| description: | | |
| Rename or move an email folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Email Folders (v1)"] | |
| operationId: deleteEmailFolderV1 | |
| x-destructive: true | |
| summary: Delete an email folder | |
| description: | | |
| **Permanently delete** an email folder. Assets inside are not deleted — they | |
| become unfoldered. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/footer: | |
| post: | |
| tags: ["Email Footers (v1)"] | |
| operationId: createEmailFooterV1 | |
| summary: Create an email footer | |
| description: | | |
| Create a reusable email footer block (contains unsubscribe links, physical | |
| address, etc.). | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/footers: | |
| get: | |
| tags: ["Email Footers (v1)"] | |
| operationId: listEmailFootersV1 | |
| summary: List email footers | |
| description: | | |
| List all email footer blocks. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/footer/{id}: | |
| get: | |
| tags: ["Email Footers (v1)"] | |
| operationId: getEmailFooterV1 | |
| summary: Get an email footer | |
| description: | | |
| Retrieve an email footer by ID, including its HTML source. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Email Footers (v1)"] | |
| operationId: updateEmailFooterV1 | |
| summary: Update an email footer | |
| description: | | |
| Update an email footer's HTML or configuration. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Email Footers (v1)"] | |
| operationId: deleteEmailFooterV1 | |
| x-destructive: true | |
| summary: Delete an email footer | |
| description: | | |
| **Permanently delete** an email footer. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/group: | |
| post: | |
| tags: ["Email Groups (v1)"] | |
| operationId: createEmailGroupV1 | |
| summary: Create an email group | |
| description: | | |
| Create a new email group (subscription category). Contacts can subscribe or | |
| unsubscribe per group. All emails must be assigned to a group. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/groups: | |
| get: | |
| tags: ["Email Groups (v1)"] | |
| operationId: listEmailGroupsV1 | |
| summary: List email groups | |
| description: | | |
| List all email groups. Use this to find emailGroupId values required when | |
| creating email assets. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/group/{id}: | |
| get: | |
| tags: ["Email Groups (v1)"] | |
| operationId: getEmailGroupV1 | |
| summary: Get an email group | |
| description: | | |
| Retrieve an email group by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Email Groups (v1)"] | |
| operationId: updateEmailGroupV1 | |
| summary: Update an email group | |
| description: | | |
| Update an email group's name or description. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Email Groups (v1)"] | |
| operationId: deleteEmailGroupV1 | |
| x-destructive: true | |
| summary: Delete an email group | |
| description: | | |
| **Permanently delete** an email group. Emails assigned to this group must be | |
| reassigned first. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/header: | |
| post: | |
| tags: ["Email Headers (v1)"] | |
| operationId: createEmailHeaderV1 | |
| summary: Create an email header | |
| description: | | |
| Create a reusable email header block (logo, navigation bar, etc.). | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/headers: | |
| get: | |
| tags: ["Email Headers (v1)"] | |
| operationId: listEmailHeadersV1 | |
| summary: List email headers | |
| description: | | |
| List all email header blocks. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/header/{id}: | |
| get: | |
| tags: ["Email Headers (v1)"] | |
| operationId: getEmailHeaderV1 | |
| summary: Get an email header | |
| description: | | |
| Retrieve an email header by ID, including its HTML source. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Email Headers (v1)"] | |
| operationId: updateEmailHeaderV1 | |
| summary: Update an email header | |
| description: | | |
| Update an email header's HTML or settings. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Email Headers (v1)"] | |
| operationId: deleteEmailHeaderV1 | |
| x-destructive: true | |
| summary: Delete an email header | |
| description: | | |
| **Permanently delete** an email header. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email: | |
| post: | |
| tags: ["Emails (v1)"] | |
| operationId: createEmailV1 | |
| summary: Create an email | |
| description: | | |
| Create a new email asset. Requires an emailGroupId. Use the Email schema for | |
| the request body, including subject, htmlContent, fromName, and fromEmail. | |
| Prefer API 2.0 for new work. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Email' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/emails: | |
| get: | |
| tags: ["Emails (v1)"] | |
| operationId: listEmailsV1 | |
| summary: List emails | |
| description: | | |
| List email assets. Returns names and IDs. Use `depth=complete` to include HTML | |
| content. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/email/{id}: | |
| get: | |
| tags: ["Emails (v1)"] | |
| operationId: getEmailV1 | |
| summary: Get an email | |
| description: | | |
| Retrieve an email asset by ID, including its full HTML content and | |
| configuration. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Emails (v1)"] | |
| operationId: updateEmailV1 | |
| summary: Update an email | |
| description: | | |
| Update an email asset's content, subject line, sender fields, or settings. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Email' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Emails (v1)"] | |
| operationId: deleteEmailV1 | |
| x-destructive: true | |
| summary: Delete an email | |
| description: | | |
| **Permanently delete** an email asset. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/form/{id}: | |
| post: | |
| tags: ["Form Data (v1)"] | |
| operationId: submitFormDataV1 | |
| summary: Submit form data | |
| description: | | |
| Submit a form data record as if a contact had submitted the form. Triggers the | |
| form's processing steps. Use {id} = the form asset ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: ["Form Data (v1)"] | |
| operationId: getFormDataOverviewV1 | |
| summary: Get form data overview | |
| description: | | |
| Retrieve a summary of form submission data for the specified form. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/form/{formId}/formData: | |
| get: | |
| tags: ["Form Data (v1)"] | |
| operationId: listFormSubmissionsV1 | |
| summary: List form submissions | |
| description: | | |
| Retrieve a paginated list of individual form submissions for a form. Use | |
| pathFormId for {formId}. | |
| parameters: | |
| - $ref: '#/components/parameters/pathFormId' | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/data/form/{formId}/formData/{formSubmitJobId}: | |
| get: | |
| tags: ["Form Data (v1)"] | |
| operationId: getFormSubmissionV1 | |
| summary: Get a form submission | |
| description: | | |
| Retrieve a specific form submission record by job ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathFormId' | |
| - $ref: '#/components/parameters/pathFormSubmitJobId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/form: | |
| post: | |
| tags: ["Forms (v1)"] | |
| operationId: createFormV1 | |
| summary: Create a form | |
| description: | | |
| Create a new web form asset with fields and processing steps. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Form' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/forms: | |
| get: | |
| tags: ["Forms (v1)"] | |
| operationId: listFormsV1 | |
| summary: List forms | |
| description: | | |
| List form assets. Returns names and IDs. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/form/{id}: | |
| get: | |
| tags: ["Forms (v1)"] | |
| operationId: getFormV1 | |
| summary: Get a form | |
| description: | | |
| Retrieve a form by ID, including all form fields and processing steps. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Forms (v1)"] | |
| operationId: updateFormV1 | |
| summary: Update a form | |
| description: | | |
| Update a form's configuration, fields, or processing steps. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Form' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Forms (v1)"] | |
| operationId: deleteFormV1 | |
| x-destructive: true | |
| summary: Delete a form | |
| description: | | |
| **Permanently delete** a form asset. Submitted data is retained. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/image/content: | |
| post: | |
| tags: ["Images (v1)"] | |
| operationId: uploadImageV1 | |
| summary: Upload an image | |
| description: | | |
| Upload an image file to the Eloqua image library. Use multipart/form-data with | |
| a `file` field. Returns the image asset with its hosted URL. | |
| requestBody: | |
| required: true | |
| content: | |
| multipart/form-data: | |
| schema: | |
| type: object | |
| properties: | |
| file: | |
| type: string | |
| format: binary | |
| required: | |
| - file | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/images: | |
| get: | |
| tags: ["Images (v1)"] | |
| operationId: listImagesV1 | |
| summary: List images | |
| description: | | |
| List image assets in the library. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/image/{id}: | |
| get: | |
| tags: ["Images (v1)"] | |
| operationId: getImageV1 | |
| summary: Get an image | |
| description: | | |
| Retrieve an image asset by ID, including its hosted URL. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Images (v1)"] | |
| operationId: updateImageV1 | |
| summary: Update an image | |
| description: | | |
| Update an image asset's name or folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Images (v1)"] | |
| operationId: deleteImageV1 | |
| x-destructive: true | |
| summary: Delete an image | |
| description: | | |
| **Permanently delete** an image asset from the library. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/landingPage: | |
| post: | |
| tags: ["Landing Pages (v1)"] | |
| operationId: createLandingPageV1 | |
| summary: Create a landing page | |
| description: | | |
| Create a new Eloqua-hosted landing page. Requires associating with a microsite. | |
| Prefer API 2.0 for new work. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/LandingPage' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/landingPages: | |
| get: | |
| tags: ["Landing Pages (v1)"] | |
| operationId: listLandingPagesV1 | |
| summary: List landing pages | |
| description: | | |
| List landing page assets. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/landingPage/{id}: | |
| get: | |
| tags: ["Landing Pages (v1)"] | |
| operationId: getLandingPageV1 | |
| summary: Get a landing page | |
| description: | | |
| Retrieve a landing page by ID, including its HTML content. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Landing Pages (v1)"] | |
| operationId: updateLandingPageV1 | |
| summary: Update a landing page | |
| description: | | |
| Update a landing page's HTML content or settings. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/LandingPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Landing Pages (v1)"] | |
| operationId: deleteLandingPageV1 | |
| x-destructive: true | |
| summary: Delete a landing page | |
| description: | | |
| **Permanently delete** a landing page. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/microsite: | |
| post: | |
| tags: ["Microsites (v1)"] | |
| operationId: createMicrositeV1 | |
| summary: Create a microsite | |
| description: | | |
| Create a new microsite (custom domain configuration for landing pages). | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/microsites: | |
| get: | |
| tags: ["Microsites (v1)"] | |
| operationId: listMicrositesV1 | |
| summary: List microsites | |
| description: | | |
| List all microsites in the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/microsite/{id}: | |
| get: | |
| tags: ["Microsites (v1)"] | |
| operationId: getMicrositeV1 | |
| summary: Get a microsite | |
| description: | | |
| Retrieve a microsite by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Microsites (v1)"] | |
| operationId: updateMicrositeV1 | |
| summary: Update a microsite | |
| description: | | |
| Update a microsite's configuration. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Microsites (v1)"] | |
| operationId: deleteMicrositeV1 | |
| x-destructive: true | |
| summary: Delete a microsite | |
| description: | | |
| **Permanently delete** a microsite. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/optionList: | |
| post: | |
| tags: ["Option Lists (v1)"] | |
| operationId: createOptionListV1 | |
| summary: Create an option list | |
| description: | | |
| Create a new option list (shared dropdown values) for use in contact fields. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/optionLists: | |
| get: | |
| tags: ["Option Lists (v1)"] | |
| operationId: listOptionListsV1 | |
| summary: List option lists | |
| description: | | |
| List all option lists. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/assets/optionList/{id}: | |
| get: | |
| tags: ["Option Lists (v1)"] | |
| operationId: getOptionListV1 | |
| summary: Get an option list | |
| description: | | |
| Retrieve an option list by ID, including all its option values. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Option Lists (v1)"] | |
| operationId: updateOptionListV1 | |
| summary: Update an option list | |
| description: | | |
| Update an option list's name or values. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: ["Option Lists (v1)"] | |
| operationId: deleteOptionListV1 | |
| x-destructive: true | |
| summary: Delete an option list | |
| description: | | |
| **Permanently delete** an option list. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/NoContent' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/system/users: | |
| get: | |
| tags: ["Users (v1)"] | |
| operationId: listUsersV1 | |
| summary: List users | |
| description: | | |
| List all Eloqua user accounts in the instance. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| /api/REST/1.0/system/user/{id}: | |
| get: | |
| tags: ["Users (v1)"] | |
| operationId: getUserV1 | |
| summary: Get a user | |
| description: | | |
| Retrieve a user account by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: ["Users (v1)"] | |
| operationId: updateUserV1 | |
| summary: Update a user | |
| description: | | |
| Update a user's name, email, or role settings. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| '400': | |
| $ref: '#/components/responses/Error' | |
| '401': | |
| $ref: '#/components/responses/Error' | |
| '404': | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/account/group: | |
| post: | |
| tags: | |
| - "Account Groups (v2)" | |
| operationId: createAccountGroupV2 | |
| summary: Create an account group | |
| description: | | |
| Create a new account group for filtering accounts. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/account/groups: | |
| get: | |
| tags: | |
| - "Account Groups (v2)" | |
| operationId: listAccountGroupsV2 | |
| summary: List account groups | |
| description: | | |
| List all account groups. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/account/group/{id}: | |
| get: | |
| tags: | |
| - "Account Groups (v2)" | |
| operationId: getAccountGroupV2 | |
| summary: Get an account group | |
| description: | | |
| Retrieve an account group by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Account Groups (v2)" | |
| operationId: updateAccountGroupV2 | |
| summary: Update an account group | |
| description: | | |
| Update an account group's name or filter criteria. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Account Groups (v2)" | |
| operationId: deleteAccountGroupV2 | |
| summary: Delete an account group | |
| description: | | |
| **Permanently delete** an account group. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/accounts: | |
| post: | |
| tags: | |
| - "Accounts (v2)" | |
| operationId: queryAccountsV2 | |
| summary: Query accounts | |
| description: | | |
| Retrieve accounts matching criteria submitted in the POST body. Supports richer filtering than v1. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/account/{id}/membership: | |
| get: | |
| tags: | |
| - "Accounts (v2)" | |
| operationId: getAccountMembershipV2 | |
| summary: Get account memberships | |
| description: | | |
| Retrieve the account group memberships for a specific account. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/MembershipList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/activities/contact/{id}/{type}: | |
| get: | |
| tags: | |
| - "Activities (v2)" | |
| operationId: listContactActivitiesByTypeV2 | |
| summary: List contact activities by type | |
| description: | | |
| Retrieve activities of a specific type for a contact. `type` values: EmailOpen, EmailClickthrough, FormSubmit, PageView, WebVisit, Subscribe, Unsubscribe, Bounceback. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - name: type | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/auditLog/reportExport: | |
| post: | |
| tags: | |
| - "Audit Logs (v2)" | |
| operationId: exportAuditLogsV2 | |
| summary: Export audit logs | |
| description: | | |
| Initiate an audit log export recording user and system actions. Returns a job reference — poll the returned URI for completion. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/field: | |
| post: | |
| tags: | |
| - "Campaign Fields (v2)" | |
| operationId: createCampaignFieldV2 | |
| summary: Create a campaign field | |
| description: | | |
| Create a custom campaign field definition. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/fields: | |
| get: | |
| tags: | |
| - "Campaign Fields (v2)" | |
| operationId: listCampaignFieldsV2 | |
| summary: List campaign fields | |
| description: | | |
| List all campaign field definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/field/{id}: | |
| get: | |
| tags: | |
| - "Campaign Fields (v2)" | |
| operationId: getCampaignFieldV2 | |
| summary: Get a campaign field | |
| description: | | |
| Retrieve a campaign field definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Campaign Fields (v2)" | |
| operationId: updateCampaignFieldV2 | |
| summary: Update a campaign field | |
| description: | | |
| Update a campaign field definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Campaign Fields (v2)" | |
| operationId: deleteCampaignFieldV2 | |
| summary: Delete a campaign field | |
| description: | | |
| **Permanently delete** a campaign field. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: patchFolderContentsCampaignV2 | |
| summary: Update campaign folder contents | |
| description: | | |
| Update folder contents by adding or removing asset references. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: getFolderContentsCampaignV2 | |
| summary: Get campaign folder contents | |
| description: | | |
| Retrieve assets contained within a folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folder: | |
| post: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: createFolderCampaignV2 | |
| summary: Create a campaign folder | |
| description: | | |
| Create a new folder. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folder/{id}: | |
| delete: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: deleteFolderCampaignV2 | |
| summary: Delete a campaign folder | |
| description: | | |
| **Permanently delete** a folder. Assets inside are not deleted. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: getFolderCampaignV2 | |
| summary: Get a campaign folder | |
| description: | | |
| Retrieve a folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: updateFolderCampaignV2 | |
| summary: Update a campaign folder | |
| description: | | |
| Update a folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folder/root/contents: | |
| get: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: getRootFolderContentsCampaignV2 | |
| summary: Get root campaign folder contents | |
| description: | | |
| Retrieve assets in the root (top-level) folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folders: | |
| get: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: listFoldersCampaignV2 | |
| summary: List campaign folders | |
| description: | | |
| List all folders of this type. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folder/{id}/folders: | |
| get: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: getChildFoldersCampaignV2 | |
| summary: Get child campaign folders | |
| description: | | |
| Retrieve child folders of a folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folder/root/folders: | |
| get: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: getRootChildFoldersCampaignV2 | |
| summary: Get root-level child campaign folders | |
| description: | | |
| Retrieve top-level child folders. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/folder/root: | |
| get: | |
| tags: | |
| - "Campaign Folders (v2)" | |
| operationId: getRootFolderCampaignV2 | |
| summary: Get root campaign folder | |
| description: | | |
| Retrieve the root folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign: | |
| post: | |
| tags: | |
| - "Campaigns (v2)" | |
| operationId: createCampaignV2 | |
| summary: Create a campaign | |
| description: | | |
| Create a new campaign in draft status. Set `type` to Simple or Multi-step. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Campaign' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaigns: | |
| get: | |
| tags: | |
| - "Campaigns (v2)" | |
| operationId: listCampaignsV2 | |
| summary: List campaigns | |
| description: | | |
| List campaigns. Filter by status or date using `search`. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| - $ref: '#/components/parameters/queryLastUpdatedAt' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/{id}: | |
| get: | |
| tags: | |
| - "Campaigns (v2)" | |
| operationId: getCampaignV2 | |
| summary: Get a campaign | |
| description: | | |
| Retrieve a campaign by ID including its steps and targeting segments. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Campaigns (v2)" | |
| operationId: updateCampaignV2 | |
| summary: Update a campaign | |
| description: | | |
| Update a campaign. Must be in draft status to edit. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Campaign' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Campaigns (v2)" | |
| operationId: deleteCampaignV2 | |
| summary: Delete a campaign | |
| description: | | |
| **Permanently delete** a campaign. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/active/{id}: | |
| post: | |
| tags: | |
| - "Campaigns (v2)" | |
| operationId: activateCampaignV2 | |
| summary: Activate a campaign | |
| description: | | |
| **Activate (launch) a campaign**, moving it from draft to live. Sends emails and enrolls contacts — cannot be undone. Verify the campaign before activating. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/campaign/draft/{id}: | |
| post: | |
| tags: | |
| - "Campaigns (v2)" | |
| operationId: deactivateCampaignV2 | |
| summary: Deactivate a campaign | |
| description: | | |
| Move an active campaign back to draft, pausing execution. In-progress contacts retain their position. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/filter/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: patchFolderContentsContactFilterV2 | |
| summary: Update contact filter folder contents | |
| description: | | |
| Update folder contents by adding or removing asset references. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: getFolderContentsContactFilterV2 | |
| summary: Get contact filter folder contents | |
| description: | | |
| Retrieve assets contained within a folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/filter/folder: | |
| post: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: createFolderContactFilterV2 | |
| summary: Create a contact filter folder | |
| description: | | |
| Create a new folder. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/filter/folder/{id}: | |
| delete: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: deleteFolderContactFilterV2 | |
| summary: Delete a contact filter folder | |
| description: | | |
| **Permanently delete** a folder. Assets inside are not deleted. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: getFolderContactFilterV2 | |
| summary: Get a contact filter folder | |
| description: | | |
| Retrieve a folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: updateFolderContactFilterV2 | |
| summary: Update a contact filter folder | |
| description: | | |
| Update a folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/filter/folder/root/contents: | |
| get: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: getRootFolderContentsContactFilterV2 | |
| summary: Get root contact filter folder contents | |
| description: | | |
| Retrieve assets in the root (top-level) folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/filter/folders: | |
| get: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: listFoldersContactFilterV2 | |
| summary: List contact filter folders | |
| description: | | |
| List all folders of this type. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/filter/folder/root: | |
| get: | |
| tags: | |
| - "Contact Filter Folders (v2)" | |
| operationId: getRootFolderContactFilterV2 | |
| summary: Get root contact filter folder | |
| description: | | |
| Retrieve the root folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/list/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: patchFolderContentsContactListV2 | |
| summary: Update contact list folder contents | |
| description: | | |
| Update folder contents by adding or removing asset references. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: getFolderContentsContactListV2 | |
| summary: Get contact list folder contents | |
| description: | | |
| Retrieve assets contained within a folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/list/folder: | |
| post: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: createFolderContactListV2 | |
| summary: Create a contact list folder | |
| description: | | |
| Create a new folder. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/list/folder/{id}: | |
| delete: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: deleteFolderContactListV2 | |
| summary: Delete a contact list folder | |
| description: | | |
| **Permanently delete** a folder. Assets inside are not deleted. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: getFolderContactListV2 | |
| summary: Get a contact list folder | |
| description: | | |
| Retrieve a folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: updateFolderContactListV2 | |
| summary: Update a contact list folder | |
| description: | | |
| Update a folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/list/folder/root/contents: | |
| get: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: getRootFolderContentsContactListV2 | |
| summary: Get root contact list folder contents | |
| description: | | |
| Retrieve assets in the root (top-level) folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/list/folders: | |
| get: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: listFoldersContactListV2 | |
| summary: List contact list folders | |
| description: | | |
| List all folders of this type. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/list/folder/root: | |
| get: | |
| tags: | |
| - "Contact List Folders (v2)" | |
| operationId: getRootFolderContactListV2 | |
| summary: Get root contact list folder | |
| description: | | |
| Retrieve the root folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: patchFolderContentsContactSegmentV2 | |
| summary: Update contact segment folder contents | |
| description: | | |
| Update folder contents by adding or removing asset references. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: getFolderContentsContactSegmentV2 | |
| summary: Get contact segment folder contents | |
| description: | | |
| Retrieve assets contained within a folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/folder: | |
| post: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: createFolderContactSegmentV2 | |
| summary: Create a contact segment folder | |
| description: | | |
| Create a new folder. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/folder/{id}: | |
| delete: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: deleteFolderContactSegmentV2 | |
| summary: Delete a contact segment folder | |
| description: | | |
| **Permanently delete** a folder. Assets inside are not deleted. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: getFolderContactSegmentV2 | |
| summary: Get a contact segment folder | |
| description: | | |
| Retrieve a folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: updateFolderContactSegmentV2 | |
| summary: Update a contact segment folder | |
| description: | | |
| Update a folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/folder/root/contents: | |
| get: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: getRootFolderContentsContactSegmentV2 | |
| summary: Get root contact segment folder contents | |
| description: | | |
| Retrieve assets in the root (top-level) folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/folders: | |
| get: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: listFoldersContactSegmentV2 | |
| summary: List contact segment folders | |
| description: | | |
| List all folders of this type. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/folder/root: | |
| get: | |
| tags: | |
| - "Contact Segment Folders (v2)" | |
| operationId: getRootFolderContactSegmentV2 | |
| summary: Get root contact segment folder | |
| description: | | |
| Retrieve the root folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment: | |
| post: | |
| tags: | |
| - "Contact Segments (v2)" | |
| operationId: createContactSegmentV2 | |
| summary: Create a contact segment | |
| description: | | |
| Create a dynamic contact segment with filter criteria. Segments auto-update as contacts match or unmatch. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segments: | |
| get: | |
| tags: | |
| - "Contact Segments (v2)" | |
| operationId: listContactSegmentsV2 | |
| summary: List contact segments | |
| description: | | |
| List all contact segments. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/{id}: | |
| get: | |
| tags: | |
| - "Contact Segments (v2)" | |
| operationId: getContactSegmentV2 | |
| summary: Get a contact segment | |
| description: | | |
| Retrieve a segment by ID, including filter criteria and contact count. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Contact Segments (v2)" | |
| operationId: updateContactSegmentV2 | |
| summary: Update a contact segment | |
| description: | | |
| Update a segment's filter criteria or name. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Contact Segments (v2)" | |
| operationId: deleteContactSegmentV2 | |
| summary: Delete a contact segment | |
| description: | | |
| **Permanently delete** a contact segment. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/contact/segment/{id}/copy: | |
| post: | |
| tags: | |
| - "Contact Segments (v2)" | |
| operationId: copyContactSegmentV2 | |
| summary: Copy a contact segment | |
| description: | | |
| Create a copy of a contact segment with all its criteria. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/contacts: | |
| post: | |
| tags: | |
| - "Contacts (v2)" | |
| operationId: queryContactsV2 | |
| summary: Query contacts | |
| description: | | |
| Retrieve contacts matching POST body criteria. Preferred over v1 for new integrations. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/contact/{id}: | |
| get: | |
| tags: | |
| - "Contacts (v2)" | |
| operationId: getContactV2 | |
| summary: Get a contact | |
| description: | | |
| Retrieve a contact by ID. Use `depth=complete` for all custom field values. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Contacts (v2)" | |
| operationId: updateContactV2 | |
| summary: Update a contact | |
| description: | | |
| Update a contact's fields. emailAddress cannot duplicate another contact's. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Contact' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/contact/{id}/membership: | |
| get: | |
| tags: | |
| - "Contacts (v2)" | |
| operationId: getContactMembershipV2 | |
| summary: Get contact memberships | |
| description: | | |
| Retrieve the lists and segments a contact currently belongs to. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/MembershipList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/countries: | |
| get: | |
| tags: | |
| - "Countries (v2)" | |
| operationId: listCountriesV2 | |
| summary: List countries | |
| description: | | |
| List countries available in Eloqua for address fields and segmentation. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/customObject/{parentId}/instance: | |
| post: | |
| tags: | |
| - "Custom Object Data (v2)" | |
| operationId: createCustomObjectInstanceV2 | |
| summary: Create a custom object instance | |
| description: | | |
| Create a new instance (record) in custom object {parentId}. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/customObject/{parentId}/instances: | |
| get: | |
| tags: | |
| - "Custom Object Data (v2)" | |
| operationId: listCustomObjectInstancesV2 | |
| summary: List custom object instances | |
| description: | | |
| List instances from a custom object. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/customObject/{parentId}/instance/{id}: | |
| get: | |
| tags: | |
| - "Custom Object Data (v2)" | |
| operationId: getCustomObjectInstanceV2 | |
| summary: Get a custom object instance | |
| description: | | |
| Retrieve a specific custom object instance. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Custom Object Data (v2)" | |
| operationId: updateCustomObjectInstanceV2 | |
| summary: Update a custom object instance | |
| description: | | |
| Update a custom object instance's field values. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Custom Object Data (v2)" | |
| operationId: deleteCustomObjectInstanceV2 | |
| summary: Delete a custom object instance | |
| description: | | |
| **Permanently delete** a custom object instance. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/customObject: | |
| post: | |
| tags: | |
| - "Custom Objects (v2)" | |
| operationId: createCustomObjectV2 | |
| summary: Create a custom object | |
| description: | | |
| Create a new custom object schema definition. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/CustomObject' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/customObjects: | |
| get: | |
| tags: | |
| - "Custom Objects (v2)" | |
| operationId: listCustomObjectsV2 | |
| summary: List custom objects | |
| description: | | |
| List all custom object definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/customObject/{id}: | |
| get: | |
| tags: | |
| - "Custom Objects (v2)" | |
| operationId: getCustomObjectV2 | |
| summary: Get a custom object | |
| description: | | |
| Retrieve a custom object schema by ID including field definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Custom Objects (v2)" | |
| operationId: updateCustomObjectV2 | |
| summary: Update a custom object | |
| description: | | |
| Update a custom object schema. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/CustomObject' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Custom Objects (v2)" | |
| operationId: deleteCustomObjectV2 | |
| summary: Delete a custom object | |
| description: | | |
| **Permanently delete** a custom object and ALL its instance data. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/dedupeRules: | |
| get: | |
| tags: | |
| - "Dedupe Rules (v2)" | |
| operationId: listDedupeRulesV2 | |
| summary: List dedupe rules | |
| description: | | |
| List all contact deduplication rules. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/dedupeRule/{ruleId}: | |
| get: | |
| tags: | |
| - "Dedupe Rules (v2)" | |
| operationId: getDedupeRuleV2 | |
| summary: Get a dedupe rule | |
| description: | | |
| Retrieve a deduplication rule by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathRuleId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/dedupeRule/{ruleId}/handlerSets: | |
| get: | |
| tags: | |
| - "Dedupe Rules (v2)" | |
| operationId: listDedupeRuleHandlerSetsV2 | |
| summary: List dedupe rule handler sets | |
| description: | | |
| List handler sets (action groups) for a deduplication rule. | |
| parameters: | |
| - $ref: '#/components/parameters/pathRuleId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/dedupeRule/{ruleId}/handlerSet/{id}: | |
| get: | |
| tags: | |
| - "Dedupe Rules (v2)" | |
| operationId: getDedupeRuleHandlerSetV2 | |
| summary: Get a dedupe rule handler set | |
| description: | | |
| Retrieve a specific handler set from a deduplication rule. | |
| parameters: | |
| - $ref: '#/components/parameters/pathRuleId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/deployment: | |
| post: | |
| tags: | |
| - "Email Deployment (v2)" | |
| operationId: createEmailDeploymentV2 | |
| summary: Create an email deployment | |
| description: | | |
| Create and schedule a single-send email deployment to specific recipients. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/deployment/{id}: | |
| get: | |
| tags: | |
| - "Email Deployment (v2)" | |
| operationId: getEmailDeploymentV2 | |
| summary: Get an email deployment | |
| description: | | |
| Retrieve the status and details of an email deployment. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: patchFolderContentsEmailV2 | |
| summary: Update email folder contents | |
| description: | | |
| Update folder contents by adding or removing asset references. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: getFolderContentsEmailV2 | |
| summary: Get email folder contents | |
| description: | | |
| Retrieve assets contained within a folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folder: | |
| post: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: createFolderEmailV2 | |
| summary: Create an email folder | |
| description: | | |
| Create a new folder. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folder/{id}: | |
| delete: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: deleteFolderEmailV2 | |
| summary: Delete an email folder | |
| description: | | |
| **Permanently delete** a folder. Assets inside are not deleted. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: getFolderEmailV2 | |
| summary: Get an email folder | |
| description: | | |
| Retrieve a folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: updateFolderEmailV2 | |
| summary: Update an email folder | |
| description: | | |
| Update a folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folder/root/contents: | |
| get: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: getRootFolderContentsEmailV2 | |
| summary: Get root email folder contents | |
| description: | | |
| Retrieve assets in the root (top-level) folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folders: | |
| get: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: listFoldersEmailV2 | |
| summary: List email folders | |
| description: | | |
| List all folders of this type. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folder/{id}/folders: | |
| get: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: getChildFoldersEmailV2 | |
| summary: Get child email folders | |
| description: | | |
| Retrieve child folders of a folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folder/root/folders: | |
| get: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: getRootChildFoldersEmailV2 | |
| summary: Get root-level child email folders | |
| description: | | |
| Retrieve top-level child folders. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/folder/root: | |
| get: | |
| tags: | |
| - "Email Folders (v2)" | |
| operationId: getRootFolderEmailV2 | |
| summary: Get root email folder | |
| description: | | |
| Retrieve the root folder. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email: | |
| post: | |
| tags: | |
| - "Emails (v2)" | |
| operationId: createEmailV2 | |
| summary: Create an email | |
| description: | | |
| Create an email asset. Requires emailGroupId. Include subject, htmlContent, fromName, fromEmail. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Email' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/emails: | |
| get: | |
| tags: | |
| - "Emails (v2)" | |
| operationId: listEmailsV2 | |
| summary: List emails | |
| description: | | |
| List email assets. Use `depth=minimal` for a fast id+name list. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| - $ref: '#/components/parameters/queryLastUpdatedAt' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/{id}: | |
| get: | |
| tags: | |
| - "Emails (v2)" | |
| operationId: getEmailV2 | |
| summary: Get an email | |
| description: | | |
| Retrieve an email by ID including full HTML content and sender configuration. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Emails (v2)" | |
| operationId: updateEmailV2 | |
| summary: Update an email | |
| description: | | |
| Update an email's content, subject, or sender fields. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Email' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Emails (v2)" | |
| operationId: deleteEmailV2 | |
| summary: Delete an email | |
| description: | | |
| **Permanently delete** an email asset. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/{id}/archive: | |
| post: | |
| tags: | |
| - "Emails (v2)" | |
| operationId: archiveEmailV2 | |
| summary: Archive an email | |
| description: | | |
| Archive an email, removing it from active use without deleting. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/{id}/unarchive: | |
| post: | |
| tags: | |
| - "Emails (v2)" | |
| operationId: unarchiveEmailV2 | |
| summary: Unarchive an email | |
| description: | | |
| Restore an archived email to active status. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/eventRegistration/{parentId}/instance: | |
| post: | |
| tags: | |
| - "Event Registrants (v2)" | |
| operationId: createEventRegistrantV2 | |
| summary: Create an event registrant | |
| description: | | |
| Create a new event registrant for event {parentId}. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/eventRegistration/{parentId}/instances: | |
| get: | |
| tags: | |
| - "Event Registrants (v2)" | |
| operationId: listEventRegistrantsV2 | |
| summary: List event registrants | |
| description: | | |
| List registrants for a specific event. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/eventRegistration/{parentId}/instance/{id}: | |
| get: | |
| tags: | |
| - "Event Registrants (v2)" | |
| operationId: getEventRegistrantV2 | |
| summary: Get an event registrant | |
| description: | | |
| Retrieve a specific event registrant. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Event Registrants (v2)" | |
| operationId: updateEventRegistrantV2 | |
| summary: Update an event registrant | |
| description: | | |
| Update an event registrant's field values. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Event Registrants (v2)" | |
| operationId: deleteEventRegistrantV2 | |
| summary: Delete an event registrant | |
| description: | | |
| **Permanently delete** an event registrant. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/eventRegistration: | |
| post: | |
| tags: | |
| - "Events (v2)" | |
| operationId: createEventV2 | |
| summary: Create an event | |
| description: | | |
| Create a new event registration asset defining the event structure. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/eventRegistrations: | |
| get: | |
| tags: | |
| - "Events (v2)" | |
| operationId: listEventsV2 | |
| summary: List events | |
| description: | | |
| List all event registration assets. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/eventRegistration/{id}: | |
| get: | |
| tags: | |
| - "Events (v2)" | |
| operationId: getEventV2 | |
| summary: Get an event | |
| description: | | |
| Retrieve an event registration asset by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Events (v2)" | |
| operationId: updateEventV2 | |
| summary: Update an event | |
| description: | | |
| Update an event registration asset. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Events (v2)" | |
| operationId: deleteEventV2 | |
| summary: Delete an event | |
| description: | | |
| **Permanently delete** an event and all its registrant data. | |
| x-destructive: true | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/activity: | |
| post: | |
| tags: | |
| - "External Activities (v2)" | |
| operationId: createExternalActivityV2 | |
| summary: Create external activity | |
| description: | | |
| Log an external (off-Eloqua) activity for a contact, such as a web | |
| chat, event check-in, or CRM touchpoint. Links the activity to a | |
| contact via emailAddress and associates it with an external asset. | |
| Enriches the contact activity history with data from outside Eloqua. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/activity/{id}: | |
| get: | |
| tags: | |
| - "External Activities (v2)" | |
| operationId: getExternalActivityV2 | |
| summary: Get external activity | |
| description: | | |
| Retrieve a single external activity record by its Eloqua-assigned ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/external/type: | |
| post: | |
| tags: | |
| - "External Asset Types (v2)" | |
| operationId: createExternalAssetTypeV2 | |
| summary: Create external asset type | |
| description: | | |
| Create a custom external asset type (e.g., 'Live Demo', 'Webinar') | |
| that categorises non-Eloqua assets. The type must be created before | |
| assets of that type can be added. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/external/types: | |
| get: | |
| tags: | |
| - "External Asset Types (v2)" | |
| operationId: listExternalAssetTypesV2 | |
| summary: List external asset types | |
| description: | | |
| List all external asset type definitions in the instance. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/external/type/{id}: | |
| get: | |
| tags: | |
| - "External Asset Types (v2)" | |
| operationId: getExternalAssetTypeV2 | |
| summary: Get external asset type | |
| description: | | |
| Retrieve a single external asset type by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "External Asset Types (v2)" | |
| operationId: updateExternalAssetTypeV2 | |
| summary: Update external asset type | |
| description: | | |
| Update the name or attributes of an external asset type. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "External Asset Types (v2)" | |
| operationId: deleteExternalAssetTypeV2 | |
| x-destructive: true | |
| summary: Delete external asset type | |
| description: | | |
| Permanently delete an external asset type. Existing assets linked to | |
| this type will lose their type association. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/external: | |
| post: | |
| tags: | |
| - "External Assets (v2)" | |
| operationId: createExternalAssetV2 | |
| summary: Create external asset | |
| description: | | |
| Create an external asset — a non-Eloqua content piece (product page, | |
| event, video) that can be linked to external activities and tracked | |
| for engagement. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/externals: | |
| get: | |
| tags: | |
| - "External Assets (v2)" | |
| operationId: listExternalAssetsV2 | |
| summary: List external assets | |
| description: | | |
| List all external assets. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/external/{id}: | |
| get: | |
| tags: | |
| - "External Assets (v2)" | |
| operationId: getExternalAssetV2 | |
| summary: Get external asset | |
| description: | | |
| Retrieve a single external asset by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "External Assets (v2)" | |
| operationId: updateExternalAssetV2 | |
| summary: Update external asset | |
| description: | | |
| Update an external asset's properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "External Assets (v2)" | |
| operationId: deleteExternalAssetV2 | |
| x-destructive: true | |
| summary: Delete external asset | |
| description: | | |
| Permanently delete an external asset. Previously recorded activities | |
| retain their historical data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{id}: | |
| post: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: submitFormDataV2 | |
| summary: Submit form data | |
| description: | | |
| Submit a form data entry for the specified form, simulating a web form | |
| submission. Triggers all configured processing steps (notifications, | |
| contact create/update, CRM integration). Use for server-side form | |
| submission. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: getFormDataOverviewV2 | |
| summary: Get form data overview | |
| description: | | |
| Retrieve a summary overview of form submission data including | |
| submission counts and metadata. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{id}/batch: | |
| post: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: batchSubmitFormDataV2 | |
| summary: Batch submit form data | |
| description: | | |
| Submit multiple form data entries in one request. Each entry triggers | |
| processing steps independently. More efficient than individual | |
| submissions for bulk ingestion. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{id}/datarow/{rowId}: | |
| delete: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: deleteFormDataRowV2 | |
| x-destructive: true | |
| summary: Delete a form data row | |
| description: | | |
| Permanently delete a single form submission row by its row ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/pathRowId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{formId}/formData: | |
| get: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: listFormSubmissionsV2 | |
| summary: List form submissions | |
| description: | | |
| List all form submissions for the specified form, paginated. | |
| parameters: | |
| - name: formId | |
| in: path | |
| required: true | |
| schema: | |
| type: integer | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{formId}/formData/{formSubmitJobId}: | |
| get: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: getFormSubmissionV2 | |
| summary: Get specific form submission | |
| description: | | |
| Retrieve a specific form submission by form ID and submission job ID. | |
| parameters: | |
| - name: formId | |
| in: path | |
| required: true | |
| schema: | |
| type: integer | |
| - name: formSubmitJobId | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{formId}/formSpamData: | |
| get: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: listFormSpamSubmissionsV2 | |
| summary: List spam submissions | |
| description: | | |
| List submissions flagged as spam for the specified form. Spam | |
| submissions do not trigger form processing steps. | |
| parameters: | |
| - name: formId | |
| in: path | |
| required: true | |
| schema: | |
| type: integer | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{formId}/batchCorrelation/formData/{batchCorrelationId}: | |
| get: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: getFormDataBatchByCorrelationIdV2 | |
| summary: Get batch by correlation ID | |
| description: | | |
| Retrieve the status and results of a batch submission by its client- | |
| assigned correlation ID. Useful for tracking asynchronous batch | |
| submissions. | |
| parameters: | |
| - name: formId | |
| in: path | |
| required: true | |
| schema: | |
| type: integer | |
| - name: batchCorrelationId | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/form/{formId}/batch/formData/{batchId}: | |
| get: | |
| tags: | |
| - "Form Data (v2)" | |
| operationId: getFormDataBatchV2 | |
| summary: Get batch data | |
| description: | | |
| Retrieve the status and results of a batch submission by the batch ID | |
| returned from POST /batch. | |
| parameters: | |
| - name: formId | |
| in: path | |
| required: true | |
| schema: | |
| type: integer | |
| - name: batchId | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: patchFolderContentsFormV2 | |
| summary: Patch form folder contents | |
| description: | | |
| Update folder membership — move form assets into or out of the folder | |
| in a single PATCH operation. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: getFolderContentsFormV2 | |
| summary: Get form folder contents | |
| description: | | |
| List all form assets within a specific folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folder: | |
| post: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: createFolderFormV2 | |
| summary: Create form folder | |
| description: | | |
| Create a new folder for organising form assets. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folder/{id}: | |
| delete: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: deleteFolderFormV2 | |
| x-destructive: true | |
| summary: Delete form folder | |
| description: | | |
| Permanently delete a form folder. The folder must be empty before | |
| deletion. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: getFolderFormV2 | |
| summary: Get form folder | |
| description: | | |
| Retrieve a form folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: updateFolderFormV2 | |
| summary: Update form folder | |
| description: | | |
| Update a form folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folder/root/contents: | |
| get: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: getRootFolderContentsFormV2 | |
| summary: Get form root folder contents | |
| description: | | |
| List all form assets and subfolders at the root of the form folder | |
| hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folders: | |
| get: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: listFoldersFormV2 | |
| summary: List form folders | |
| description: | | |
| List all form folders across the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folder/{id}/folders: | |
| get: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: getFolderSubfoldersFormV2 | |
| summary: Get form folder subfolders | |
| description: | | |
| List direct child subfolders of a specific form folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folder/root/folders: | |
| get: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: getRootFolderSubfoldersFormV2 | |
| summary: Get form root folder subfolders | |
| description: | | |
| List all top-level form folders (direct children of root). | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/folder/root: | |
| get: | |
| tags: | |
| - "Form Folders (v2)" | |
| operationId: getRootFolderFormV2 | |
| summary: Get form root folder | |
| description: | | |
| Retrieve the root form folder — the top of the folder hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form: | |
| post: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: createFormV2 | |
| summary: Create form | |
| description: | | |
| Create a new form with field definitions, processing steps, and | |
| styling. Forms capture contact data from landing pages or embedded web | |
| forms. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Form' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/forms: | |
| get: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: listFormsV2 | |
| summary: List forms | |
| description: | | |
| List all forms in the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/{id}: | |
| get: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: getFormV2 | |
| summary: Get form | |
| description: | | |
| Retrieve a form by ID, including all field definitions and processing | |
| steps. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: updateFormV2 | |
| summary: Update form | |
| description: | | |
| Replace all form properties. Used to update field definitions and | |
| processing steps. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Form' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| patch: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: patchFormV2 | |
| summary: Partial update form | |
| description: | | |
| Partially update a form, merging supplied fields with existing ones. | |
| Preferred for targeted changes. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Form' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: deleteFormV2 | |
| x-destructive: true | |
| summary: Delete form | |
| description: | | |
| Permanently delete a form and its field definitions. Existing | |
| submission data is retained. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/{id}/archive: | |
| post: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: archiveFormV2 | |
| summary: Archive form | |
| description: | | |
| Archive a form to remove it from active use without deletion. Archived | |
| forms cannot accept new submissions. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/form/{id}/unarchive: | |
| post: | |
| tags: | |
| - "Forms (v2)" | |
| operationId: unarchiveFormV2 | |
| summary: Unarchive form | |
| description: | | |
| Restore an archived form to active status, allowing it to accept new | |
| submissions again. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: patchFolderContentsHyperlinkV2 | |
| summary: Patch hyperlink folder contents | |
| description: | | |
| Update folder membership — move hyperlink assets into or out of the | |
| folder in a single PATCH. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: getFolderContentsHyperlinkV2 | |
| summary: Get hyperlink folder contents | |
| description: | | |
| List all hyperlink assets within a specific folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folder: | |
| post: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: createFolderHyperlinkV2 | |
| summary: Create hyperlink folder | |
| description: | | |
| Create a new folder for organising hyperlink assets. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folder/{id}: | |
| delete: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: deleteFolderHyperlinkV2 | |
| x-destructive: true | |
| summary: Delete hyperlink folder | |
| description: | | |
| Permanently delete a hyperlink folder. The folder must be empty before | |
| deletion. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: getFolderHyperlinkV2 | |
| summary: Get hyperlink folder | |
| description: | | |
| Retrieve a hyperlink folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: updateFolderHyperlinkV2 | |
| summary: Update hyperlink folder | |
| description: | | |
| Update a hyperlink folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folder/root/contents: | |
| get: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: getRootFolderContentsHyperlinkV2 | |
| summary: Get hyperlink root folder contents | |
| description: | | |
| List all hyperlink assets and subfolders at the root of the folder | |
| hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folders: | |
| get: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: listFoldersHyperlinkV2 | |
| summary: List hyperlink folders | |
| description: | | |
| List all hyperlink folders across the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folder/{id}/folders: | |
| get: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: getFolderSubfoldersHyperlinkV2 | |
| summary: Get hyperlink folder subfolders | |
| description: | | |
| List direct child subfolders of a specific hyperlink folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folder/root/folders: | |
| get: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: getRootFolderSubfoldersHyperlinkV2 | |
| summary: Get hyperlink root folder subfolders | |
| description: | | |
| List all top-level hyperlink folders (direct children of root). | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/hyperlink/folder/root: | |
| get: | |
| tags: | |
| - "Hyperlink Folders (v2)" | |
| operationId: getRootFolderHyperlinkV2 | |
| summary: Get hyperlink root folder | |
| description: | | |
| Retrieve the root hyperlink folder — the top of the folder hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: patchFolderContentsImageV2 | |
| summary: Patch image folder contents | |
| description: | | |
| Update folder membership — move image assets into or out of the folder | |
| in a single PATCH. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: getFolderContentsImageV2 | |
| summary: Get image folder contents | |
| description: | | |
| List all image assets within a specific folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folder: | |
| post: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: createFolderImageV2 | |
| summary: Create image folder | |
| description: | | |
| Create a new folder for organising image assets. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folder/{id}: | |
| delete: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: deleteFolderImageV2 | |
| x-destructive: true | |
| summary: Delete image folder | |
| description: | | |
| Permanently delete an image folder. The folder must be empty before | |
| deletion. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: getFolderImageV2 | |
| summary: Get image folder | |
| description: | | |
| Retrieve an image folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: updateFolderImageV2 | |
| summary: Update image folder | |
| description: | | |
| Update an image folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folder/root/contents: | |
| get: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: getRootFolderContentsImageV2 | |
| summary: Get image root folder contents | |
| description: | | |
| List all image assets and subfolders at the root of the folder | |
| hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folders: | |
| get: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: listFoldersImageV2 | |
| summary: List image folders | |
| description: | | |
| List all image folders across the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folder/{id}/folders: | |
| get: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: getFolderSubfoldersImageV2 | |
| summary: Get image folder subfolders | |
| description: | | |
| List direct child subfolders of a specific image folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folder/root/folders: | |
| get: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: getRootFolderSubfoldersImageV2 | |
| summary: Get image root folder subfolders | |
| description: | | |
| List all top-level image folders (direct children of root). | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/image/folder/root: | |
| get: | |
| tags: | |
| - "Image Folders (v2)" | |
| operationId: getRootFolderImageV2 | |
| summary: Get image root folder | |
| description: | | |
| Retrieve the root image folder — the top of the folder hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/landingPage: | |
| post: | |
| tags: | |
| - "Landing Pages (v2)" | |
| operationId: createLandingPageV2 | |
| summary: Create landing page | |
| description: | | |
| Create a new Eloqua-hosted landing page. Landing pages can embed | |
| forms, tracked links, and personalised merge fields. Set relativeUrl | |
| to control the page URL path. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/LandingPage' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/landingPages: | |
| get: | |
| tags: | |
| - "Landing Pages (v2)" | |
| operationId: listLandingPagesV2 | |
| summary: List landing pages | |
| description: | | |
| List all landing pages. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/landingPage/{id}: | |
| get: | |
| tags: | |
| - "Landing Pages (v2)" | |
| operationId: getLandingPageV2 | |
| summary: Get landing page | |
| description: | | |
| Retrieve a landing page by ID, including HTML content and its deployed | |
| URL. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Landing Pages (v2)" | |
| operationId: updateLandingPageV2 | |
| summary: Update landing page | |
| description: | | |
| Update a landing page's HTML content, form associations, or | |
| properties. Changes take effect immediately on the live hosted URL. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/LandingPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Landing Pages (v2)" | |
| operationId: deleteLandingPageV2 | |
| x-destructive: true | |
| summary: Delete landing page | |
| description: | | |
| Permanently delete a landing page. The page is immediately taken | |
| offline. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/lookupTables: | |
| get: | |
| tags: | |
| - "Lookup Tables (v2)" | |
| operationId: listLookupTablesV2 | |
| summary: List lookup tables | |
| description: | | |
| List all lookup tables — static reference data tables used for | |
| personalisation, field population, and conditional logic. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/lookupTable/{id}: | |
| get: | |
| tags: | |
| - "Lookup Tables (v2)" | |
| operationId: getLookupTableV2 | |
| summary: Get lookup table | |
| description: | | |
| Retrieve a lookup table by ID, including all column definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/lookupTable/{id}/lookupTableEntries: | |
| get: | |
| tags: | |
| - "Lookup Tables (v2)" | |
| operationId: listLookupTableEntriesV2 | |
| summary: List lookup table entries | |
| description: | | |
| List all rows in a lookup table. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/lookupTable/{id}/lookupTableEntry: | |
| post: | |
| tags: | |
| - "Lookup Tables (v2)" | |
| operationId: createLookupTableEntryV2 | |
| summary: Create lookup table entry | |
| description: | | |
| Add a new row to a lookup table. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/lookupTable/{lookupTableId}/lookupTableEntry/{elementId}: | |
| put: | |
| tags: | |
| - "Lookup Tables (v2)" | |
| operationId: updateLookupTableEntryV2 | |
| summary: Update lookup table entry | |
| description: | | |
| Update an existing lookup table row by element ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathLookupTableId' | |
| - $ref: '#/components/parameters/pathElementId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Lookup Tables (v2)" | |
| operationId: deleteLookupTableEntryV2 | |
| x-destructive: true | |
| summary: Delete lookup table entry | |
| description: | | |
| Permanently delete a row from a lookup table. | |
| parameters: | |
| - $ref: '#/components/parameters/pathLookupTableId' | |
| - $ref: '#/components/parameters/pathElementId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/program: | |
| post: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: createProgramV2 | |
| summary: Create program | |
| description: | | |
| Create a new orchestration program — an automated multi-step workflow | |
| that contacts move through over time, with decision branches, email | |
| sends, wait steps, and CRM updates. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/programs: | |
| get: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: listProgramsV2 | |
| summary: List programs | |
| description: | | |
| List all programs. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/program/{id}: | |
| get: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: getProgramV2 | |
| summary: Get program | |
| description: | | |
| Retrieve a program by ID, including all step definitions and current | |
| status. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: updateProgramV2 | |
| summary: Update program | |
| description: | | |
| Update a program's step definitions or configuration. Only allowed | |
| when the program is in draft status. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: deleteProgramV2 | |
| x-destructive: true | |
| summary: Delete program | |
| description: | | |
| Permanently delete a program. Active programs must be deactivated | |
| before deletion. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/program/active/{id}: | |
| post: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: activateProgramV2 | |
| x-destructive: true | |
| summary: Activate program | |
| description: | | |
| Activate (start) a program, moving it from draft to live. Once | |
| activated, contacts begin entering and progressing through program | |
| steps. Cannot be undone — use deactivate or pause to stop execution. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/program/draft/{id}: | |
| post: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: deactivateProgramV2 | |
| summary: Deactivate program | |
| description: | | |
| Return a running program to draft status, stopping new contacts from | |
| entering. Contacts currently in the program continue until they | |
| naturally exit. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/program/pause/{id}: | |
| post: | |
| tags: | |
| - "Programs (v2)" | |
| operationId: pauseProgramV2 | |
| summary: Pause program | |
| description: | | |
| Temporarily pause a live program, suspending contact movement. | |
| Contacts remain at their current step until the program is re- | |
| activated. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms: | |
| post: | |
| tags: | |
| - "SMS (v2)" | |
| operationId: createSmsV2 | |
| summary: Create SMS | |
| description: | | |
| Create an SMS asset — an outbound SMS message with content, sender | |
| code, and keyword configuration. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "SMS (v2)" | |
| operationId: listSmsV2 | |
| summary: List SMS | |
| description: | | |
| List all SMS assets in the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/{id}: | |
| get: | |
| tags: | |
| - "SMS (v2)" | |
| operationId: getSmsV2 | |
| summary: Get SMS | |
| description: | | |
| Retrieve an SMS asset by ID along with its sender code and keyword | |
| settings. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "SMS (v2)" | |
| operationId: updateSmsV2 | |
| summary: Update SMS | |
| description: | | |
| Update an SMS asset's message content or keyword configuration. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "SMS (v2)" | |
| operationId: deleteSmsV2 | |
| x-destructive: true | |
| summary: Delete SMS | |
| description: | | |
| Permanently delete an SMS asset. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/senderCodes: | |
| get: | |
| tags: | |
| - "SMS Codes (v2)" | |
| operationId: listSmsSenderCodesV2 | |
| summary: List SMS sender codes | |
| description: | | |
| List all SMS sender codes (short codes or long codes) configured for | |
| the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folder/{id}/contents: | |
| patch: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: patchFolderContentsSmsV2 | |
| summary: Patch SMS folder contents | |
| description: | | |
| Update folder membership — move SMS assets into or out of the folder | |
| in a single PATCH. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: getFolderContentsSmsV2 | |
| summary: Get SMS folder contents | |
| description: | | |
| List all SMS assets within a specific folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folder: | |
| post: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: createFolderSmsV2 | |
| summary: Create SMS folder | |
| description: | | |
| Create a new folder for organising SMS assets. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folder/{id}: | |
| delete: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: deleteFolderSmsV2 | |
| x-destructive: true | |
| summary: Delete SMS folder | |
| description: | | |
| Permanently delete an SMS folder. The folder must be empty before | |
| deletion. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: getFolderSmsV2 | |
| summary: Get SMS folder | |
| description: | | |
| Retrieve an SMS folder by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: updateFolderSmsV2 | |
| summary: Update SMS folder | |
| description: | | |
| Update an SMS folder's name or properties. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folder/root/contents: | |
| get: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: getRootFolderContentsSmsV2 | |
| summary: Get SMS root folder contents | |
| description: | | |
| List all SMS assets and subfolders at the root of the SMS folder | |
| hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/FolderContents' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folders: | |
| get: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: listFoldersSmsV2 | |
| summary: List SMS folders | |
| description: | | |
| List all SMS folders across the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folder/{id}/folders: | |
| get: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: getFolderSubfoldersSmsV2 | |
| summary: Get SMS folder subfolders | |
| description: | | |
| List direct child subfolders of a specific SMS folder. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folder/root/folders: | |
| get: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: getRootFolderSubfoldersSmsV2 | |
| summary: Get SMS root folder subfolders | |
| description: | | |
| List all top-level SMS folders (direct children of root). | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/folder/root: | |
| get: | |
| tags: | |
| - "SMS Folders (v2)" | |
| operationId: getRootFolderSmsV2 | |
| summary: Get SMS root folder | |
| description: | | |
| Retrieve the root SMS folder — the top of the folder hierarchy. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/invalidResponseMessage: | |
| post: | |
| tags: | |
| - "SMS Invalid Keyword Messages (v2)" | |
| operationId: createSmsInvalidResponseMessageV2 | |
| summary: Create SMS invalid keyword message | |
| description: | | |
| Create a reply message sent to contacts who text an unrecognised | |
| keyword to the SMS number. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/invalidResponseMessages: | |
| get: | |
| tags: | |
| - "SMS Invalid Keyword Messages (v2)" | |
| operationId: listSmsInvalidResponseMessagesV2 | |
| summary: List SMS invalid keyword messages | |
| description: | | |
| List all SMS invalid-response message definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/invalidResponseMessage/{id}: | |
| get: | |
| tags: | |
| - "SMS Invalid Keyword Messages (v2)" | |
| operationId: getSmsInvalidResponseMessageV2 | |
| summary: Get SMS invalid keyword message | |
| description: | | |
| Retrieve a single invalid-response message by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "SMS Invalid Keyword Messages (v2)" | |
| operationId: updateSmsInvalidResponseMessageV2 | |
| summary: Update SMS invalid keyword message | |
| description: | | |
| Update the reply text or configuration of an invalid-response message. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "SMS Invalid Keyword Messages (v2)" | |
| operationId: deleteSmsInvalidResponseMessageV2 | |
| x-destructive: true | |
| summary: Delete SMS invalid keyword message | |
| description: | | |
| Permanently delete an invalid-response message. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/keyword: | |
| post: | |
| tags: | |
| - "SMS Keywords (v2)" | |
| operationId: createSmsKeywordV2 | |
| summary: Create SMS keyword | |
| description: | | |
| Create an SMS keyword (e.g., STOP, JOIN, INFO) that contacts can text | |
| to trigger a specific response or opt-in/opt-out action. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/keywords: | |
| get: | |
| tags: | |
| - "SMS Keywords (v2)" | |
| operationId: listSmsKeywordsV2 | |
| summary: List SMS keywords | |
| description: | | |
| List all SMS keywords configured for the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/sms/keyword/{id}: | |
| get: | |
| tags: | |
| - "SMS Keywords (v2)" | |
| operationId: getSmsKeywordV2 | |
| summary: Get SMS keyword | |
| description: | | |
| Retrieve a single SMS keyword by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "SMS Keywords (v2)" | |
| operationId: deleteSmsKeywordV2 | |
| x-destructive: true | |
| summary: Delete SMS keyword | |
| description: | | |
| Permanently delete an SMS keyword. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/sms/subscription: | |
| post: | |
| tags: | |
| - "SMS Subscription (v2)" | |
| operationId: createSmsSubscriptionV2 | |
| summary: Create SMS subscription | |
| description: | | |
| Record an SMS opt-in or opt-out for a contact. Always ensure explicit | |
| prior consent is obtained before sending marketing SMS (required by | |
| TCPA/GDPR/CASL). | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "SMS Subscription (v2)" | |
| operationId: updateSmsSubscriptionV2 | |
| summary: Update SMS subscription | |
| description: | | |
| Update the SMS subscription status for a contact, changing their opt- | |
| in or opt-out state. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/security/group: | |
| post: | |
| tags: | |
| - "Security Groups (v2)" | |
| operationId: createSecurityGroupV2 | |
| summary: Create security group | |
| description: | | |
| Create a new security group for role-based access control (RBAC). | |
| Security groups define which Eloqua assets, features, and data views | |
| group members can access. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/security/groups: | |
| get: | |
| tags: | |
| - "Security Groups (v2)" | |
| operationId: listSecurityGroupsV2 | |
| summary: List security groups | |
| description: | | |
| List all security groups in the account. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/security/group/{id}: | |
| get: | |
| tags: | |
| - "Security Groups (v2)" | |
| operationId: getSecurityGroupV2 | |
| summary: Get security group | |
| description: | | |
| Retrieve a security group by ID, including its member list and | |
| permission configuration. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Security Groups (v2)" | |
| operationId: updateSecurityGroupV2 | |
| summary: Update security group | |
| description: | | |
| Update a security group's name or permission assignments. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Security Groups (v2)" | |
| operationId: deleteSecurityGroupV2 | |
| x-destructive: true | |
| summary: Delete security group | |
| description: | | |
| Permanently delete a security group. Members lose the associated | |
| permissions immediately. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/security/group/{id}/users: | |
| get: | |
| tags: | |
| - "Security Groups (v2)" | |
| operationId: listSecurityGroupUsersV2 | |
| summary: List security group users | |
| description: | | |
| List all users who are members of the specified security group. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| patch: | |
| tags: | |
| - "Security Groups (v2)" | |
| operationId: patchSecurityGroupUsersV2 | |
| summary: Add or remove users from security group | |
| description: | | |
| Add or remove users from a security group in a single PATCH operation. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/signature/rule/{ruleId}/mappings: | |
| post: | |
| tags: | |
| - "Signature Rule Mappings (v2)" | |
| operationId: createSignatureRuleMappingsV2 | |
| summary: Create signature rule mappings | |
| description: | | |
| Create segment-to-signature mappings for an email signature rule. Each | |
| mapping associates a contact segment with a specific email signature | |
| variant. | |
| parameters: | |
| - $ref: '#/components/parameters/pathRuleId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Signature Rule Mappings (v2)" | |
| operationId: getSignatureRuleMappingsV2 | |
| summary: Get signature rule mappings | |
| description: | | |
| Retrieve all signature-to-segment mappings for the specified signature | |
| rule. | |
| parameters: | |
| - $ref: '#/components/parameters/pathRuleId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Signature Rule Mappings (v2)" | |
| operationId: updateSignatureRuleMappingsV2 | |
| summary: Update signature rule mappings | |
| description: | | |
| Replace all signature-to-segment mappings for the specified signature | |
| rule. | |
| parameters: | |
| - $ref: '#/components/parameters/pathRuleId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Signature Rule Mappings (v2)" | |
| operationId: deleteSignatureRuleMappingsV2 | |
| x-destructive: true | |
| summary: Delete signature rule mappings | |
| description: | | |
| Permanently delete all signature-to-segment mappings for the specified | |
| signature rule. | |
| parameters: | |
| - $ref: '#/components/parameters/pathRuleId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/signature/rule: | |
| post: | |
| tags: | |
| - "Signature Rules (v2)" | |
| operationId: createSignatureRuleV2 | |
| summary: Create signature rule | |
| description: | | |
| Create an email signature rule that dynamically selects the | |
| appropriate sender signature based on contact attributes or campaign | |
| context. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/signature/rules: | |
| get: | |
| tags: | |
| - "Signature Rules (v2)" | |
| operationId: listSignatureRulesV2 | |
| summary: List signature rules | |
| description: | | |
| List all email signature rules. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/email/signature/rule/{id}: | |
| get: | |
| tags: | |
| - "Signature Rules (v2)" | |
| operationId: getSignatureRuleV2 | |
| summary: Get signature rule | |
| description: | | |
| Retrieve a signature rule by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Signature Rules (v2)" | |
| operationId: updateSignatureRuleV2 | |
| summary: Update signature rule | |
| description: | | |
| Update a signature rule's mappings or configuration. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Signature Rules (v2)" | |
| operationId: deleteSignatureRuleV2 | |
| x-destructive: true | |
| summary: Delete signature rule | |
| description: | | |
| Permanently delete a signature rule. Emails using this rule will lose | |
| dynamic signature population. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/user: | |
| post: | |
| tags: | |
| - "Users (v2)" | |
| operationId: createUserV2 | |
| summary: Create user | |
| description: | | |
| Create a new Eloqua user account. After creation, assign the user to | |
| security groups to grant appropriate permissions. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/ResourceCreated' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/users: | |
| get: | |
| tags: | |
| - "Users (v2)" | |
| operationId: listUsersV2 | |
| summary: List users | |
| description: | | |
| List all users in the Eloqua instance. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| - $ref: '#/components/parameters/querySearch' | |
| - $ref: '#/components/parameters/queryOrderBy' | |
| - $ref: '#/components/parameters/queryDepth' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/user/current: | |
| get: | |
| tags: | |
| - "Users (v2)" | |
| operationId: getCurrentUserV2 | |
| summary: Get current user | |
| description: | | |
| Retrieve the profile of the currently authenticated user. Useful for | |
| validating API credentials or bootstrapping session context. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/user/{id}: | |
| get: | |
| tags: | |
| - "Users (v2)" | |
| operationId: getUserV2 | |
| summary: Get user | |
| description: | | |
| Retrieve a specific user by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Users (v2)" | |
| operationId: updateUserV2 | |
| summary: Update user | |
| description: | | |
| Update a user's profile, preferences, or default views. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Users (v2)" | |
| operationId: deleteUserV2 | |
| x-destructive: true | |
| summary: Delete user | |
| description: | | |
| Permanently delete a user account. This action removes all account | |
| history associated with the user. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/user/{id}/enabled: | |
| put: | |
| tags: | |
| - "Users (v2)" | |
| operationId: setUserEnabledV2 | |
| summary: Enable or disable user | |
| description: | | |
| Enable or disable a user account. Disabled users cannot log in or make | |
| API calls. Use to deactivate departing employees without deleting | |
| account history. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/Resource' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/system/user/{id}/password: | |
| put: | |
| tags: | |
| - "Users (v2)" | |
| operationId: changeUserPasswordV2 | |
| summary: Change user password | |
| description: | | |
| Set a new password for a user account. The user must use the new | |
| password on their next login. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/assets/visitor/fields: | |
| get: | |
| tags: | |
| - "Visitor Profile Fields (v2)" | |
| operationId: listVisitorProfileFieldsV2 | |
| summary: List visitor profile fields | |
| description: | | |
| List all visitor profile fields defined in the account. Visitor | |
| profile fields capture anonymous website visitor behaviour (pages | |
| visited, location, referrer) before the visitor is identified as a | |
| contact. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/rest/2.0/data/visitors: | |
| get: | |
| tags: | |
| - "Visitors (v2)" | |
| operationId: listVisitorsV2 | |
| summary: List visitors | |
| description: | | |
| List recent anonymous website visitors tracked by the Eloqua tracking | |
| script. Returns visitor GUID, timestamps, and page activity. | |
| parameters: | |
| - $ref: '#/components/parameters/queryCount' | |
| - $ref: '#/components/parameters/queryPage' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Visitors (v2)" | |
| operationId: queryVisitorsV2 | |
| summary: Retrieve visitors by GUID | |
| description: | | |
| Retrieve specific visitor records by supplying an array of visitor | |
| GUIDs in the request body. Returns full profile data for each matched | |
| visitor. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/Resource' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ResourceList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/AccountActivity/1/Account: | |
| get: | |
| tags: | |
| - "Reporting Account Activity" | |
| operationId: listODataAccountActivity | |
| summary: List accounts | |
| description: | | |
| List Account entities from the OData AccountActivity reporting feed. | |
| Supports $filter, $select, $orderby, $top, and $skip query options. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/AccountActivity/1/Account/{key}: | |
| get: | |
| tags: | |
| - "Reporting Account Activity" | |
| operationId: getODataAccountActivityByKey | |
| summary: Get account by key | |
| description: | | |
| Retrieve a single Account entity by its primary key from the OData | |
| AccountActivity reporting feed. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/AccountActivity/1/Account/AccountIDByAccountName(AccountName='{AccountName}'): | |
| get: | |
| tags: | |
| - "Reporting Account Activity" | |
| operationId: getODataAccountActivityIdByName | |
| summary: Get account ID by account name | |
| description: | | |
| OData function call that returns the Eloqua account entity matching | |
| the supplied AccountName. Use the returned id in subsequent queries or | |
| Application API calls. | |
| parameters: | |
| - name: AccountName | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/AccountActivity/1/Account/AccountIDByCompanyName(CompanyName='{CompanyName}'): | |
| get: | |
| tags: | |
| - "Reporting Account Activity" | |
| operationId: getODataAccountActivityIdByCompanyName | |
| summary: Get account ID by company name | |
| description: | | |
| OData function call that returns the Eloqua account entity matching | |
| the supplied CompanyName. Use the returned id in subsequent queries or | |
| Application API calls. | |
| parameters: | |
| - name: CompanyName | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/AccountActivity/1/AccountEngagement: | |
| get: | |
| tags: | |
| - "Reporting Account Activity" | |
| operationId: listODataAccountEngagement | |
| summary: List account engagement | |
| description: | | |
| List AccountEngagement records from the OData AccountActivity | |
| reporting feed. Engagement data reflects aggregated contact | |
| interactions attributed to accounts. Supports standard OData v4 query | |
| options. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/AccountActivity/1/AccountEngagement/{key}: | |
| get: | |
| tags: | |
| - "Reporting Account Activity" | |
| operationId: getODataAccountEngagementByKey | |
| summary: Get account engagement by key | |
| description: | | |
| Retrieve a single AccountEngagement record by its primary key from the | |
| OData reporting feed. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/Campaign: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataCampaign | |
| summary: List campaigns | |
| description: | | |
| List Campaign entities from the OData ActivityDetails reporting feed. | |
| Supports $filter, $select, $orderby, $top, and $skip query options. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/Campaign/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataCampaignByKey | |
| summary: Get campaign by key | |
| description: | | |
| Retrieve a single Campaign entity by its primary key from the OData | |
| ActivityDetails reporting feed. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/CampaignResponse: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataCampaignResponse | |
| summary: List campaign responses | |
| description: | | |
| List CampaignResponse entities from the OData ActivityDetails | |
| reporting feed. Supports standard OData v4 query options. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/CampaignResponse/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataCampaignResponseByKey | |
| summary: Get campaign response by key | |
| description: | | |
| Retrieve a single CampaignResponse entity by its primary key from the | |
| OData reporting feed. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/Contact: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataContact | |
| summary: List contacts | |
| description: | | |
| List Contact entities from the OData ActivityDetails reporting feed. | |
| Supports $filter, $select, $orderby, $top, and $skip query options. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/Contact/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataContactByKey | |
| summary: Get contact by key | |
| description: | | |
| Retrieve a single Contact entity by its primary key from the OData | |
| ActivityDetails reporting feed. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/ContactIntegrationFields: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataContactIntegrationFields | |
| summary: List contact integration fields | |
| description: | | |
| List ContactIntegrationFields entities from the OData ActivityDetails | |
| feed — these map contact fields to external CRM integration field | |
| identifiers. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/ContactIntegrationFields/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataContactIntegrationFieldsByKey | |
| summary: Get contact integration fields by key | |
| description: | | |
| Retrieve a single ContactIntegrationFields record by its primary key. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/Device: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataDevice | |
| summary: List devices | |
| description: | | |
| List Device entities from the OData ActivityDetails reporting feed. | |
| Device records capture browser, OS, and device type from email open | |
| and click events. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/Device/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataDeviceByKey | |
| summary: Get device by key | |
| description: | | |
| Retrieve a single Device entity by its primary key from the OData | |
| reporting feed. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EloquaLinkedAccount: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataEloquaLinkedAccount | |
| summary: List Eloqua linked accounts | |
| description: | | |
| List EloquaLinkedAccount entities from the OData ActivityDetails feed. | |
| These represent CRM accounts linked to Eloqua accounts for revenue | |
| attribution. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EloquaLinkedAccount/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataEloquaLinkedAccountByKey | |
| summary: Get Eloqua linked account by key | |
| description: | | |
| Retrieve a single EloquaLinkedAccount entity by its primary key. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailAsset: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataEmailAsset | |
| summary: List email assets | |
| description: | | |
| List EmailAsset entities from the OData ActivityDetails reporting | |
| feed. Email assets represent templates referenced in activity data. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailAsset/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataEmailAssetByKey | |
| summary: Get email asset by key | |
| description: | | |
| Retrieve a single EmailAsset entity by its primary key. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailAutoClick: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataEmailAutoClick | |
| summary: List email auto clicks | |
| description: | | |
| List EmailAutoClick events from the OData ActivityDetails feed. Auto- | |
| clicks are machine-generated clicks (e.g., from security scanners) not | |
| caused by human recipients. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailAutoClick/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataEmailAutoClickByKey | |
| summary: Get email auto click by key | |
| description: | | |
| Retrieve a single EmailAutoClick event record by its primary key. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailAutoOpen: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataEmailAutoOpen | |
| summary: List email auto opens | |
| description: | | |
| List EmailAutoOpen events from the OData ActivityDetails feed. Auto- | |
| opens are machine-generated opens (e.g., from mail preview or security | |
| scanning) not caused by human recipients. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailAutoOpen/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataEmailAutoOpenByKey | |
| summary: Get email auto open by key | |
| description: | | |
| Retrieve a single EmailAutoOpen event record by its primary key. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailBounceback: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: listODataEmailBounceback | |
| summary: List email bouncebacks | |
| description: | | |
| List EmailBounceback events from the OData ActivityDetails feed. | |
| Bounce records capture hard and soft bounces, including bounce type | |
| and reason code. | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataCollection' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /API/OData/ActivityDetails/1/EmailBounceback/{key}: | |
| get: | |
| tags: | |
| - "Reporting Activity Details" | |
| operationId: getODataEmailBouncebackByKey | |
| summary: Get email bounceback by key | |
| description: | | |
| Retrieve a single EmailBounceback event record by its primary key. | |
| parameters: | |
| - name: key | |
| in: path | |
| required: true | |
| schema: | |
| type: string | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/ODataEntity' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/exports: | |
| post: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: createBulkAccountExport | |
| summary: Create an account export definition | |
| description: | | |
| Step 1 (Define) of the Bulk Export workflow. Create an export | |
| definition specifying which account fields to export using field | |
| statements like {{Account.Field(C_Company)}}. Returns a uri to | |
| reference when triggering a sync at POST /api/bulk/2.0/syncs. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: listBulkAccountExports | |
| summary: List account export definitions | |
| description: | | |
| List all account export definitions. Use to discover existing exports | |
| or audit active definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/exports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: getBulkAccountExport | |
| summary: Get an account export definition | |
| description: | | |
| Retrieve a single account export definition by ID, including its field | |
| map, filter, and uri. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: updateBulkAccountExport | |
| summary: Update an account export definition | |
| description: | | |
| Update an account export definition. Changes take effect on the next | |
| sync triggered against this definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: deleteBulkAccountExport | |
| x-destructive: true | |
| summary: Delete an account export definition | |
| description: | | |
| Permanently delete an account export definition. Active syncs | |
| referencing this definition are not affected, but the definition | |
| cannot be reused. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/exports/{id}/data: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: getBulkAccountExportData | |
| summary: Get account export data | |
| description: | | |
| Step 4 (Fetch) of the Bulk Export workflow. Retrieve exported account | |
| records page by page. Use offset and limit to paginate (max 50,000 per | |
| call). Only available after the sync reaches success or warning | |
| status. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: deleteBulkAccountExportData | |
| x-destructive: true | |
| summary: Delete account export data | |
| description: | | |
| Permanently delete all staged export data for this definition, freeing | |
| server storage. Run after you have successfully fetched all records. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/imports: | |
| post: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: createBulkAccountImport | |
| summary: Create an account import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow. Create an import | |
| definition specifying the field map for uploading account records. Set | |
| identifierFieldName to control the match/merge key. Returns a uri for | |
| data upload and sync triggering. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: listBulkAccountImports | |
| summary: List account import definitions | |
| description: | | |
| List all account import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: getBulkAccountImport | |
| summary: Get an account import definition | |
| description: | | |
| Retrieve a single account import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: updateBulkAccountImport | |
| summary: Update an account import definition | |
| description: | | |
| Update an account import definition. Changes apply to the next data | |
| upload and sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: deleteBulkAccountImport | |
| x-destructive: true | |
| summary: Delete an account import definition | |
| description: | | |
| Permanently delete an account import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: deleteBulkAccountImportData | |
| x-destructive: true | |
| summary: Delete account import data | |
| description: | | |
| Permanently delete all staged import data for this definition. Use to | |
| clear bad data before re-uploading. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: uploadBulkAccountImportData | |
| summary: Upload account import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow — run BEFORE triggering | |
| the sync. POST a BulkData payload with an items array of account | |
| records to stage for import. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/syncActions: | |
| post: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: createBulkAccountSyncAction | |
| summary: Create an account sync action definition | |
| description: | | |
| Step 1 (Define) of the Bulk Sync Action workflow. Create a sync action | |
| that performs a server-side operation on matching account records | |
| (e.g., update a field value). Returns a uri for triggering via POST | |
| /api/bulk/2.0/syncs. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: listBulkAccountSyncActions | |
| summary: List account sync action definitions | |
| description: | | |
| List all account sync action definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/syncActions/{id}: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: getBulkAccountSyncAction | |
| summary: Get an account sync action definition | |
| description: | | |
| Retrieve a single account sync action definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: updateBulkAccountSyncAction | |
| summary: Update an account sync action definition | |
| description: | | |
| Update an account sync action definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: deleteBulkAccountSyncAction | |
| x-destructive: true | |
| summary: Delete an account sync action definition | |
| description: | | |
| Permanently delete an account sync action definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/syncActions/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: deleteBulkAccountSyncActionData | |
| x-destructive: true | |
| summary: Delete account sync action data | |
| description: | | |
| Permanently delete staged sync action data for this definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: uploadBulkAccountSyncActionData | |
| summary: Upload account sync action data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Sync Action workflow. Upload account | |
| records to process before triggering the sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/fields: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: listBulkAccountFields | |
| summary: List available account fields | |
| description: | | |
| List all available account fields that can be referenced in | |
| export/import field statements. Each field has a statement property | |
| (e.g., {{Account.Field(C_Company)}}) to use in definition field maps. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: getBulkAccountField | |
| summary: Get an account field | |
| description: | | |
| Retrieve a single account field descriptor by ID, including its field | |
| statement syntax and data type. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/lists: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: listBulkAccountLists | |
| summary: List account lists | |
| description: | | |
| List account list definitions that can be used as filter constraints | |
| in account export definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/accounts/lists/{id}: | |
| get: | |
| tags: | |
| - "Bulk Accounts" | |
| operationId: getBulkAccountList | |
| summary: Get an account list | |
| description: | | |
| Retrieve a single account list definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/exports: | |
| post: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: createBulkActivityExport | |
| summary: Create an activity export definition | |
| description: | | |
| Step 1 (Define) of the Bulk Export workflow. Create an export | |
| definition for contact activity data — email sends, opens, clicks, | |
| bounces, and form submissions. Returns a uri to reference when | |
| triggering a sync. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: listBulkActivityExports | |
| summary: List activity export definitions | |
| description: | | |
| List all activity export definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/exports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: getBulkActivityExport | |
| summary: Get an activity export definition | |
| description: | | |
| Retrieve a single activity export definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: updateBulkActivityExport | |
| summary: Update an activity export definition | |
| description: | | |
| Update an activity export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: deleteBulkActivityExport | |
| x-destructive: true | |
| summary: Delete an activity export definition | |
| description: | | |
| Permanently delete an activity export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/exports/{id}/data: | |
| get: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: getBulkActivityExportData | |
| summary: Get activity export data | |
| description: | | |
| Step 4 (Fetch) of the Bulk Export workflow. Retrieve exported activity | |
| records page by page (max 50,000 per call). Only available after sync | |
| completion. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: deleteBulkActivityExportData | |
| x-destructive: true | |
| summary: Delete activity export data | |
| description: | | |
| Permanently delete staged activity export data, freeing server | |
| storage. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/imports: | |
| post: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: createBulkActivityImport | |
| summary: Create an activity import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow. Create an import | |
| definition for uploading external activity records into Eloqua contact | |
| activity history. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: listBulkActivityImports | |
| summary: List activity import definitions | |
| description: | | |
| List all activity import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: getBulkActivityImport | |
| summary: Get an activity import definition | |
| description: | | |
| Retrieve a single activity import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: updateBulkActivityImport | |
| summary: Update an activity import definition | |
| description: | | |
| Update an activity import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: deleteBulkActivityImport | |
| x-destructive: true | |
| summary: Delete an activity import definition | |
| description: | | |
| Permanently delete an activity import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: deleteBulkActivityImportData | |
| x-destructive: true | |
| summary: Delete activity import data | |
| description: | | |
| Permanently delete staged activity import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: uploadBulkActivityImportData | |
| summary: Upload activity import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload activity records | |
| to stage for import BEFORE triggering a sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/fields: | |
| get: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: listBulkActivityFields | |
| summary: List available activity fields | |
| description: | | |
| List all available activity fields that can be referenced in | |
| export/import field statements. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/activities/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Activities" | |
| operationId: getBulkActivityField | |
| summary: Get an activity field | |
| description: | | |
| Retrieve a single activity field descriptor by ID, including its field | |
| statement and data type. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/exports: | |
| post: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: createBulkCampaignResponseExport | |
| summary: Create a campaign response export definition | |
| description: | | |
| Step 1 (Define) of the Bulk Export workflow. Create an export | |
| definition for campaign response data — records showing which contacts | |
| responded to which campaigns. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: listBulkCampaignResponseExports | |
| summary: List campaign response export definitions | |
| description: | | |
| List all campaign response export definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/exports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: getBulkCampaignResponseExport | |
| summary: Get a campaign response export definition | |
| description: | | |
| Retrieve a single campaign response export definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: updateBulkCampaignResponseExport | |
| summary: Update a campaign response export definition | |
| description: | | |
| Update a campaign response export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: deleteBulkCampaignResponseExport | |
| x-destructive: true | |
| summary: Delete a campaign response export definition | |
| description: | | |
| Permanently delete a campaign response export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/exports/{id}/data: | |
| get: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: getBulkCampaignResponseExportData | |
| summary: Get campaign response export data | |
| description: | | |
| Step 4 (Fetch) of the Bulk Export workflow. Retrieve exported campaign | |
| response records page by page. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: deleteBulkCampaignResponseExportData | |
| x-destructive: true | |
| summary: Delete campaign response export data | |
| description: | | |
| Permanently delete staged campaign response export data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/imports: | |
| post: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: createBulkCampaignResponseImport | |
| summary: Create a campaign response import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow. Create an import | |
| definition for uploading campaign response records. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: listBulkCampaignResponseImports | |
| summary: List campaign response import definitions | |
| description: | | |
| List all campaign response import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: getBulkCampaignResponseImport | |
| summary: Get a campaign response import definition | |
| description: | | |
| Retrieve a single campaign response import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: updateBulkCampaignResponseImport | |
| summary: Update a campaign response import definition | |
| description: | | |
| Update a campaign response import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: deleteBulkCampaignResponseImport | |
| x-destructive: true | |
| summary: Delete a campaign response import definition | |
| description: | | |
| Permanently delete a campaign response import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: deleteBulkCampaignResponseImportData | |
| x-destructive: true | |
| summary: Delete campaign response import data | |
| description: | | |
| Permanently delete staged campaign response import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: uploadBulkCampaignResponseImportData | |
| summary: Upload campaign response import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload campaign | |
| response records to stage for import. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/fields: | |
| get: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: listBulkCampaignResponseFields | |
| summary: List available campaign response fields | |
| description: | | |
| List all available campaign response fields for use in field | |
| statements. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaignResponses/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Campaign Responses" | |
| operationId: getBulkCampaignResponseField | |
| summary: Get a campaign response field | |
| description: | | |
| Retrieve a single campaign response field descriptor by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaigns/fields: | |
| get: | |
| tags: | |
| - "Bulk Campaigns" | |
| operationId: listBulkCampaignFields | |
| summary: List available campaign fields | |
| description: | | |
| List all available campaign fields that can be referenced in field | |
| statements. Campaign fields are read-only in the Bulk API — use them | |
| in export definitions to enrich contact exports with campaign | |
| attributes. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/campaigns/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Campaigns" | |
| operationId: getBulkCampaignField | |
| summary: Get a campaign field | |
| description: | | |
| Retrieve a single campaign field descriptor by ID, including its field | |
| statement syntax. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/exports: | |
| post: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: createBulkContactExport | |
| summary: Create a contact export definition | |
| description: | | |
| Step 1 (Define) of the Bulk Export workflow. Create an export | |
| definition specifying which contact fields to export using field | |
| statements like {{Contact.Field(C_EmailAddress)}}. Optionally add a | |
| filter to restrict which contacts are included. Returns a uri to | |
| reference when triggering a sync at POST /api/bulk/2.0/syncs. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactExports | |
| summary: List contact export definitions | |
| description: | | |
| List all contact export definitions. Use to discover existing exports | |
| or audit active definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/exports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactExport | |
| summary: Get a contact export definition | |
| description: | | |
| Retrieve a single contact export definition by ID, including its field | |
| map, filter, and uri. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: updateBulkContactExport | |
| summary: Update a contact export definition | |
| description: | | |
| Update a contact export definition. Changes take effect on the next | |
| sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: deleteBulkContactExport | |
| x-destructive: true | |
| summary: Delete a contact export definition | |
| description: | | |
| Permanently delete a contact export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/exports/{id}/data: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactExportData | |
| summary: Get contact export data | |
| description: | | |
| Step 4 (Fetch) of the Bulk Export workflow. Retrieve exported contact | |
| records page by page using offset and limit (max 50,000 per call). | |
| Only available after the sync reaches success or warning status. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: deleteBulkContactExportData | |
| x-destructive: true | |
| summary: Delete contact export data | |
| description: | | |
| Permanently delete staged contact export data, freeing server storage. | |
| Run after successfully fetching all records. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/imports: | |
| post: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: createBulkContactImport | |
| summary: Create a contact import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow. Create an import | |
| definition for uploading contact records. Typically set | |
| identifierFieldName to C_EmailAddress for match/merge. Returns a uri | |
| for staging data and triggering syncs. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactImports | |
| summary: List contact import definitions | |
| description: | | |
| List all contact import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactImport | |
| summary: Get a contact import definition | |
| description: | | |
| Retrieve a single contact import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: updateBulkContactImport | |
| summary: Update a contact import definition | |
| description: | | |
| Update a contact import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: deleteBulkContactImport | |
| x-destructive: true | |
| summary: Delete a contact import definition | |
| description: | | |
| Permanently delete a contact import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: deleteBulkContactImportData | |
| x-destructive: true | |
| summary: Delete contact import data | |
| description: | | |
| Permanently delete staged contact import data. Use to clear bad data | |
| before re-uploading. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: uploadBulkContactImportData | |
| summary: Upload contact import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow — run BEFORE triggering | |
| the sync. POST a BulkData payload with an items array of contact | |
| records to stage for import. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/syncActions: | |
| post: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: createBulkContactSyncAction | |
| summary: Create a contact sync action definition | |
| description: | | |
| Step 1 (Define) of the Bulk Sync Action workflow. Create a sync action | |
| that performs a server-side operation on matching contact records | |
| (e.g., add to a list, subscribe to an email group). Returns a uri for | |
| triggering. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactSyncActions | |
| summary: List contact sync action definitions | |
| description: | | |
| List all contact sync action definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/syncActions/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactSyncAction | |
| summary: Get a contact sync action definition | |
| description: | | |
| Retrieve a single contact sync action definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: updateBulkContactSyncAction | |
| summary: Update a contact sync action definition | |
| description: | | |
| Update a contact sync action definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: deleteBulkContactSyncAction | |
| x-destructive: true | |
| summary: Delete a contact sync action definition | |
| description: | | |
| Permanently delete a contact sync action definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/syncActions/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: deleteBulkContactSyncActionData | |
| x-destructive: true | |
| summary: Delete contact sync action data | |
| description: | | |
| Permanently delete staged contact sync action data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: uploadBulkContactSyncActionData | |
| summary: Upload contact sync action data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Sync Action workflow. Upload contact | |
| records to process before triggering the sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/fields: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactFields | |
| summary: List available contact fields | |
| description: | | |
| List all available contact fields that can be referenced in | |
| export/import field statements. Each field has a statement property | |
| (e.g., {{Contact.Field(C_EmailAddress)}}) to use in definition field | |
| maps. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactField | |
| summary: Get a contact field | |
| description: | | |
| Retrieve a single contact field descriptor by ID, including its field | |
| statement and data type. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/filters: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactFilters | |
| summary: List available contact filters | |
| description: | | |
| List contact filter definitions that can be referenced in the filter | |
| field of contact export definitions to restrict which contacts are | |
| exported. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/filters/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactFilter | |
| summary: Get a contact filter | |
| description: | | |
| Retrieve a single contact filter definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/lists: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactLists | |
| summary: List contact lists | |
| description: | | |
| List contact list definitions. Use the list uri in a filter to | |
| restrict a contact export or sync action to list members only. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/lists/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactList | |
| summary: Get a contact list | |
| description: | | |
| Retrieve a single contact list definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/segments: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactSegments | |
| summary: List contact segments | |
| description: | | |
| List contact segment definitions. Segments are dynamic groupings that | |
| can be referenced in export filter criteria. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/segments/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactSegment | |
| summary: Get a contact segment | |
| description: | | |
| Retrieve a single contact segment definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/scoring/models: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: listBulkContactScoringModels | |
| summary: List contact scoring models | |
| description: | | |
| List contact scoring model definitions. Scoring model fields can be | |
| exported to retrieve contact profile scores. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/contacts/scoring/models/{id}: | |
| get: | |
| tags: | |
| - "Bulk Contacts" | |
| operationId: getBulkContactScoringModel | |
| summary: Get a contact scoring model | |
| description: | | |
| Retrieve a single contact scoring model definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: listBulkCustomObjects | |
| summary: List all custom object definitions | |
| description: | | |
| List all Custom Data Object (CDO) definitions available for bulk | |
| operations. Use the parentId from this list when accessing CDO- | |
| specific export, import, syncAction, and field endpoints. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: getBulkCustomObject | |
| summary: Get a custom object definition | |
| description: | | |
| Retrieve a single CDO definition by its parentId, including field | |
| definitions and the unique key field. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/exports: | |
| post: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: createBulkCustomObjectExport | |
| summary: Create a custom object export definition | |
| description: | | |
| Step 1 (Define) of the Bulk Export workflow for a CDO. Create an | |
| export definition specifying which CDO fields to export. Use the CDO | |
| parentId in the path. Returns a uri to reference when triggering a | |
| sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: listBulkCustomObjectExports | |
| summary: List custom object export definitions | |
| description: | | |
| List all export definitions for the specified CDO (identified by | |
| parentId). | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/exports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: getBulkCustomObjectExport | |
| summary: Get a custom object export definition | |
| description: | | |
| Retrieve a single CDO export definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: updateBulkCustomObjectExport | |
| summary: Update a custom object export definition | |
| description: | | |
| Update a CDO export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: deleteBulkCustomObjectExport | |
| x-destructive: true | |
| summary: Delete a custom object export definition | |
| description: | | |
| Permanently delete a CDO export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/exports/{id}/data: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: getBulkCustomObjectExportData | |
| summary: Get custom object export data | |
| description: | | |
| Step 4 (Fetch) of the Bulk Export workflow. Retrieve exported CDO | |
| records page by page (max 50,000 per call). | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: deleteBulkCustomObjectExportData | |
| x-destructive: true | |
| summary: Delete custom object export data | |
| description: | | |
| Permanently delete staged CDO export data, freeing server storage. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/imports: | |
| post: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: createBulkCustomObjectImport | |
| summary: Create a custom object import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow for a CDO. Create an | |
| import definition for uploading records into the specified CDO. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: listBulkCustomObjectImports | |
| summary: List custom object import definitions | |
| description: | | |
| List all import definitions for the specified CDO. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: getBulkCustomObjectImport | |
| summary: Get a custom object import definition | |
| description: | | |
| Retrieve a single CDO import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: updateBulkCustomObjectImport | |
| summary: Update a custom object import definition | |
| description: | | |
| Update a CDO import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: deleteBulkCustomObjectImport | |
| x-destructive: true | |
| summary: Delete a custom object import definition | |
| description: | | |
| Permanently delete a CDO import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: deleteBulkCustomObjectImportData | |
| x-destructive: true | |
| summary: Delete custom object import data | |
| description: | | |
| Permanently delete staged CDO import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: uploadBulkCustomObjectImportData | |
| summary: Upload custom object import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload CDO records to | |
| stage for import BEFORE triggering a sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/syncActions: | |
| post: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: createBulkCustomObjectSyncAction | |
| summary: Create a custom object sync action definition | |
| description: | | |
| Step 1 (Define) of the Bulk Sync Action workflow for a CDO. Create a | |
| sync action that performs a server-side operation on matching CDO | |
| records. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: listBulkCustomObjectSyncActions | |
| summary: List custom object sync action definitions | |
| description: | | |
| List all sync action definitions for the specified CDO. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/syncActions/{id}: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: getBulkCustomObjectSyncAction | |
| summary: Get a custom object sync action definition | |
| description: | | |
| Retrieve a single CDO sync action definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: updateBulkCustomObjectSyncAction | |
| summary: Update a custom object sync action definition | |
| description: | | |
| Update a CDO sync action definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: deleteBulkCustomObjectSyncAction | |
| x-destructive: true | |
| summary: Delete a custom object sync action definition | |
| description: | | |
| Permanently delete a CDO sync action definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/syncActions/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: deleteBulkCustomObjectSyncActionData | |
| x-destructive: true | |
| summary: Delete custom object sync action data | |
| description: | | |
| Permanently delete staged CDO sync action data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: uploadBulkCustomObjectSyncActionData | |
| summary: Upload custom object sync action data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Sync Action workflow. Upload CDO records | |
| to process before triggering the sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/fields: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: listBulkCustomObjectFields | |
| summary: List available custom object fields | |
| description: | | |
| List all available fields for the specified CDO. Each field has a | |
| statement property for use in export/import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/customObjects/{parentId}/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Custom Objects" | |
| operationId: getBulkCustomObjectField | |
| summary: Get a custom object field | |
| description: | | |
| Retrieve a single CDO field descriptor by ID, including its field | |
| statement and data type. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/emailAddresses/imports: | |
| post: | |
| tags: | |
| - "Bulk Email Addresses" | |
| operationId: createBulkEmailAddressImport | |
| summary: Create an email address import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow for email addresses. | |
| Create an import definition for bulk-managing contact email addresses. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Email Addresses" | |
| operationId: listBulkEmailAddressImports | |
| summary: List email address import definitions | |
| description: | | |
| List all email address import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/emailAddresses/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Email Addresses" | |
| operationId: getBulkEmailAddressImport | |
| summary: Get an email address import definition | |
| description: | | |
| Retrieve a single email address import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Email Addresses" | |
| operationId: updateBulkEmailAddressImport | |
| summary: Update an email address import definition | |
| description: | | |
| Update an email address import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Email Addresses" | |
| operationId: deleteBulkEmailAddressImport | |
| x-destructive: true | |
| summary: Delete an email address import definition | |
| description: | | |
| Permanently delete an email address import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/emailAddresses/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Email Addresses" | |
| operationId: deleteBulkEmailAddressImportData | |
| x-destructive: true | |
| summary: Delete email address import data | |
| description: | | |
| Permanently delete staged email address import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Email Addresses" | |
| operationId: uploadBulkEmailAddressImportData | |
| summary: Upload email address import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload email address | |
| records to stage for import BEFORE triggering a sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/emailGroups: | |
| get: | |
| tags: | |
| - "Bulk Email Groups" | |
| operationId: listBulkEmailGroups | |
| summary: List email groups | |
| description: | | |
| List all email group definitions. Email groups control subscription | |
| categories (e.g., 'Newsletter', 'Product Updates') and are referenced | |
| in subscription management imports. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/emailGroups/{id}: | |
| get: | |
| tags: | |
| - "Bulk Email Groups" | |
| operationId: getBulkEmailGroup | |
| summary: Get an email group | |
| description: | | |
| Retrieve a single email group definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events: | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: listBulkEvents | |
| summary: List all event definitions | |
| description: | | |
| List all Event definitions available for bulk operations. Use the | |
| parentId from this list to access event-specific export, import, and | |
| field endpoints. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}: | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: getBulkEvent | |
| summary: Get an event definition | |
| description: | | |
| Retrieve a single Event definition by parentId, including its field | |
| schema. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/exports: | |
| post: | |
| tags: | |
| - "Bulk Events" | |
| operationId: createBulkEventExport | |
| summary: Create an event export definition | |
| description: | | |
| Step 1 (Define) of the Bulk Export workflow for an Event. Create an | |
| export definition specifying which event fields to export. Returns a | |
| uri to reference when triggering a sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: listBulkEventExports | |
| summary: List event export definitions | |
| description: | | |
| List all export definitions for the specified Event (identified by | |
| parentId). | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/exports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: getBulkEventExport | |
| summary: Get an event export definition | |
| description: | | |
| Retrieve a single Event export definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Events" | |
| operationId: updateBulkEventExport | |
| summary: Update an event export definition | |
| description: | | |
| Update an Event export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Events" | |
| operationId: deleteBulkEventExport | |
| x-destructive: true | |
| summary: Delete an event export definition | |
| description: | | |
| Permanently delete an Event export definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/exports/{id}/data: | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: getBulkEventExportData | |
| summary: Get event export data | |
| description: | | |
| Step 4 (Fetch) of the Bulk Export workflow. Retrieve exported Event | |
| records page by page (max 50,000 per call). | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Events" | |
| operationId: deleteBulkEventExportData | |
| x-destructive: true | |
| summary: Delete event export data | |
| description: | | |
| Permanently delete staged Event export data, freeing server storage. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/imports: | |
| post: | |
| tags: | |
| - "Bulk Events" | |
| operationId: createBulkEventImport | |
| summary: Create an event import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow for an Event. Create an | |
| import definition for uploading event registration or attendance | |
| records. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: listBulkEventImports | |
| summary: List event import definitions | |
| description: | | |
| List all import definitions for the specified Event. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: getBulkEventImport | |
| summary: Get an event import definition | |
| description: | | |
| Retrieve a single Event import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Events" | |
| operationId: updateBulkEventImport | |
| summary: Update an event import definition | |
| description: | | |
| Update an Event import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Events" | |
| operationId: deleteBulkEventImport | |
| x-destructive: true | |
| summary: Delete an event import definition | |
| description: | | |
| Permanently delete an Event import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Events" | |
| operationId: deleteBulkEventImportData | |
| x-destructive: true | |
| summary: Delete event import data | |
| description: | | |
| Permanently delete staged Event import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Events" | |
| operationId: uploadBulkEventImportData | |
| summary: Upload event import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload event records to | |
| stage for import BEFORE triggering a sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/fields: | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: listBulkEventFields | |
| summary: List available event fields | |
| description: | | |
| List all available fields for the specified Event. Each field has a | |
| statement property for use in export/import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/events/{parentId}/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Events" | |
| operationId: getBulkEventField | |
| summary: Get an event field | |
| description: | | |
| Retrieve a single Event field descriptor by ID, including its field | |
| statement and data type. | |
| parameters: | |
| - $ref: '#/components/parameters/pathParentId' | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/exports: | |
| get: | |
| tags: | |
| - "Bulk Exports" | |
| operationId: listBulkExports | |
| summary: List all export definitions across all resource types | |
| description: | | |
| List all export definitions across all entity types. Useful for a | |
| global audit of active definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/exports/data: | |
| get: | |
| tags: | |
| - "Bulk Exports" | |
| operationId: getBulkExportsData | |
| summary: Get data from any export | |
| description: | | |
| Retrieve exported data from a completed export by URI. An alternative | |
| to the entity-specific data endpoint for accessing export results. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/imports: | |
| get: | |
| tags: | |
| - "Bulk Imports" | |
| operationId: listBulkImports | |
| summary: List all import definitions across all resource types | |
| description: | | |
| List all import definitions across all entity types. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/imports/data: | |
| get: | |
| tags: | |
| - "Bulk Imports" | |
| operationId: getBulkImportsData | |
| summary: Get import data | |
| description: | | |
| Retrieve the status of staged import data across all definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/imports/priorities: | |
| get: | |
| tags: | |
| - "Bulk Imports" | |
| operationId: listBulkImportPriorities | |
| summary: List import priorities | |
| description: | | |
| List import priority definitions that control the processing order | |
| when multiple imports run concurrently. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/imports/priorities/{id}: | |
| get: | |
| tags: | |
| - "Bulk Imports" | |
| operationId: getBulkImportPriority | |
| summary: Get an import priority | |
| description: | | |
| Retrieve a single import priority definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/imports: | |
| post: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: createBulkOpportunityImport | |
| summary: Create an opportunity import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow for opportunities. Create | |
| an import definition for bulk-loading CRM opportunity records into | |
| Eloqua. Supports linking opportunities to contacts for revenue | |
| attribution. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: listBulkOpportunityImports | |
| summary: List opportunity import definitions | |
| description: | | |
| List all opportunity import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: getBulkOpportunityImport | |
| summary: Get an opportunity import definition | |
| description: | | |
| Retrieve a single opportunity import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: updateBulkOpportunityImport | |
| summary: Update an opportunity import definition | |
| description: | | |
| Update an opportunity import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: deleteBulkOpportunityImport | |
| x-destructive: true | |
| summary: Delete an opportunity import definition | |
| description: | | |
| Permanently delete an opportunity import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: deleteBulkOpportunityImportData | |
| x-destructive: true | |
| summary: Delete opportunity import data | |
| description: | | |
| Permanently delete staged opportunity import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: uploadBulkOpportunityImportData | |
| summary: Upload opportunity import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload opportunity | |
| records to stage for import BEFORE triggering a sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/contacts/imports: | |
| post: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: createBulkOpportunityContactImport | |
| summary: Create an opportunity-contact import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow for opportunity-contact | |
| links. Create an import definition for associating CRM opportunity IDs | |
| with Eloqua contact records (many-to-many). | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: listBulkOpportunityContactImports | |
| summary: List opportunity-contact import definitions | |
| description: | | |
| List all opportunity-contact import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/contacts/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: getBulkOpportunityContactImport | |
| summary: Get an opportunity-contact import definition | |
| description: | | |
| Retrieve a single opportunity-contact import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: updateBulkOpportunityContactImport | |
| summary: Update an opportunity-contact import definition | |
| description: | | |
| Update an opportunity-contact import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: deleteBulkOpportunityContactImport | |
| x-destructive: true | |
| summary: Delete an opportunity-contact import definition | |
| description: | | |
| Permanently delete an opportunity-contact import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/contacts/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: deleteBulkOpportunityContactImportData | |
| x-destructive: true | |
| summary: Delete opportunity-contact import data | |
| description: | | |
| Permanently delete staged opportunity-contact import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: uploadBulkOpportunityContactImportData | |
| summary: Upload opportunity-contact import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload opportunity- | |
| contact link records to stage for import. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/fields: | |
| get: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: listBulkOpportunityFields | |
| summary: List available opportunity fields | |
| description: | | |
| List all available opportunity fields for use in import field | |
| statements. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkFieldList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/opportunities/fields/{id}: | |
| get: | |
| tags: | |
| - "Bulk Opportunities" | |
| operationId: getBulkOpportunityField | |
| summary: Get an opportunity field | |
| description: | | |
| Retrieve a single opportunity field descriptor by ID, including its | |
| field statement and data type. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/phoneNumbers/imports: | |
| post: | |
| tags: | |
| - "Bulk Phone Numbers" | |
| operationId: createBulkPhoneNumberImport | |
| summary: Create a phone number import definition | |
| description: | | |
| Step 1 (Define) of the Bulk Import workflow for phone numbers. Create | |
| an import definition for bulk-associating phone numbers with contacts. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Phone Numbers" | |
| operationId: listBulkPhoneNumberImports | |
| summary: List phone number import definitions | |
| description: | | |
| List all phone number import definitions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/phoneNumbers/imports/{id}: | |
| get: | |
| tags: | |
| - "Bulk Phone Numbers" | |
| operationId: getBulkPhoneNumberImport | |
| summary: Get a phone number import definition | |
| description: | | |
| Retrieve a single phone number import definition by ID. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| put: | |
| tags: | |
| - "Bulk Phone Numbers" | |
| operationId: updateBulkPhoneNumberImport | |
| summary: Update a phone number import definition | |
| description: | | |
| Update a phone number import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkDefinition' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkDefinition' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Phone Numbers" | |
| operationId: deleteBulkPhoneNumberImport | |
| x-destructive: true | |
| summary: Delete a phone number import definition | |
| description: | | |
| Permanently delete a phone number import definition. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/phoneNumbers/imports/{id}/data: | |
| delete: | |
| tags: | |
| - "Bulk Phone Numbers" | |
| operationId: deleteBulkPhoneNumberImportData | |
| x-destructive: true | |
| summary: Delete phone number import data | |
| description: | | |
| Permanently delete staged phone number import data. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| post: | |
| tags: | |
| - "Bulk Phone Numbers" | |
| operationId: uploadBulkPhoneNumberImportData | |
| summary: Upload phone number import data | |
| description: | | |
| Step 1.5 (Upload) of the Bulk Import workflow. Upload phone number | |
| records to stage for import BEFORE triggering a sync. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkData' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/syncActions: | |
| get: | |
| tags: | |
| - "Bulk Sync Actions" | |
| operationId: listBulkSyncActions | |
| summary: List all sync action definitions across all resource types | |
| description: | | |
| List all sync action definitions across all entity types. Useful for a | |
| cross-entity audit of active sync actions. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/syncs: | |
| post: | |
| tags: | |
| - "Bulk Syncs" | |
| operationId: createBulkSync | |
| summary: Create and trigger a sync | |
| description: | | |
| Step 2 (Trigger) of the Bulk workflow. POST {"syncedInstanceUri": | |
| "<uri>"} to execute an export, import, or sync action definition. | |
| Returns a sync object with id and initial status of pending. Poll GET | |
| /api/bulk/2.0/syncs/{id} until status reaches a terminal state. | |
| requestBody: | |
| required: true | |
| content: | |
| application/json: | |
| schema: | |
| $ref: '#/components/schemas/BulkSync' | |
| responses: | |
| '201': | |
| $ref: '#/components/responses/BulkSync' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| get: | |
| tags: | |
| - "Bulk Syncs" | |
| operationId: listBulkSyncs | |
| summary: List syncs | |
| description: | | |
| List recent syncs across all entity types. Useful for monitoring | |
| active operations and auditing historical runs. | |
| parameters: | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkSyncList' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/syncs/{id}: | |
| get: | |
| tags: | |
| - "Bulk Syncs" | |
| operationId: getBulkSync | |
| summary: Get sync status | |
| description: | | |
| Step 3 (Poll) of the Bulk workflow. Retrieve the current status of a | |
| sync. Poll every 5-10 seconds until status is success, warning, or | |
| error. A warning status means some records were rejected — check | |
| /syncs/{id}/rejects for details. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkSync' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/syncs/{id}/logs: | |
| get: | |
| tags: | |
| - "Bulk Syncs" | |
| operationId: getBulkSyncLogs | |
| summary: Get sync log entries | |
| description: | | |
| Retrieve log entries for a sync, providing detailed diagnostic | |
| information about what occurred during execution, including per-record | |
| warnings and error codes. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkSyncLog' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/syncs/{id}/data: | |
| get: | |
| tags: | |
| - "Bulk Syncs" | |
| operationId: getBulkSyncData | |
| summary: Get synced data | |
| description: | | |
| Step 4 (Fetch) of the Bulk Export workflow. Retrieve exported records | |
| from a completed sync. Page through results using offset and limit | |
| (max 50,000 per call). Only populated for export-type syncs. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| delete: | |
| tags: | |
| - "Bulk Syncs" | |
| operationId: deleteBulkSyncData | |
| x-destructive: true | |
| summary: Delete sync data | |
| description: | | |
| Permanently delete the staged data for a completed sync, freeing | |
| server storage. Run after successfully fetching all exported records. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| responses: | |
| '204': | |
| $ref: '#/components/responses/NoContent' | |
| default: | |
| $ref: '#/components/responses/Error' | |
| /api/bulk/2.0/syncs/{id}/rejects: | |
| get: | |
| tags: | |
| - "Bulk Syncs" | |
| operationId: getBulkSyncRejects | |
| summary: Get rejected records from a sync | |
| description: | | |
| Retrieve records rejected during a sync. Each entry includes the | |
| reason for rejection. Use to identify and remediate data quality | |
| issues, then re-import corrected records. | |
| parameters: | |
| - $ref: '#/components/parameters/pathId' | |
| - $ref: '#/components/parameters/bulkOffset' | |
| - $ref: '#/components/parameters/bulkLimit' | |
| responses: | |
| '200': | |
| $ref: '#/components/responses/BulkData' | |
| default: | |
| $ref: '#/components/responses/Error' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment