Eloqua REST API
The primary REST API for Oracle Eloqua, providing access to marketing automation, contact management, campaign operations, and analytics.
The primary REST API for Oracle Eloqua, providing access to marketing automation, contact management, campaign operations, and analytics.
openapi: 3.1.0
info:
title: Oracle Eloqua REST API
description: >-
The primary REST API for Oracle Eloqua Marketing Cloud Service, providing
access to marketing automation assets and data including contacts, accounts,
campaigns, emails, forms, landing pages, custom objects, and more.
version: '2.0'
contact:
name: Oracle Support
url: https://support.oracle.com/
termsOfService: https://www.oracle.com/legal/terms.html
externalDocs:
description: Oracle Eloqua REST API Documentation
url: https://docs.oracle.com/en/cloud/saas/marketing/eloqua-rest-api/
servers:
- url: https://secure.p01.eloqua.com/API/REST/2.0
description: Eloqua REST API v2.0 (pod may vary per instance)
tags:
- name: Accounts
description: Manage account records and groups
- name: Campaigns
description: Create and manage marketing campaigns
- name: Contact Lists
description: Create and manage contact lists
- name: Contact Segments
description: Create and manage contact segments
- name: Contacts
description: Manage contact records and data
- name: Custom Objects
description: Manage custom object definitions and data
- name: Emails
description: Create and manage email assets
- name: Forms
description: Create and manage forms and form data
- name: Landing Pages
description: Create and manage landing pages
- name: Programs
description: Create and manage automation programs
- name: Users
description: Manage system users
security:
- basicAuth: []
- oAuth2: []
paths:
/data/contacts:
post:
operationId: searchContacts
summary: Oracle Eloqua Search contacts
description: >-
Retrieve a list of contacts matching the specified search criteria.
tags:
- Contacts
parameters:
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/depth'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
- $ref: '#/components/parameters/orderBy'
- $ref: '#/components/parameters/lastUpdatedAt'
responses:
'200':
description: Successfully retrieved contacts
content:
application/json:
schema:
$ref: '#/components/schemas/QueryResultContact'
'400':
description: Bad request
'401':
description: Unauthorized
'403':
description: Forbidden
'500':
description: Internal server error
/data/contact/{id}:
get:
operationId: getContact
summary: Oracle Eloqua Retrieve a contact
description: >-
Retrieve a single contact record by its identifier.
tags:
- Contacts
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/depth'
- name: viewId
in: query
description: The contact view identifier to use
schema:
type: string
responses:
'200':
description: Successfully retrieved contact
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
'401':
description: Unauthorized
'404':
description: Contact not found
put:
operationId: updateContact
summary: Oracle Eloqua Update a contact
description: >-
Update an existing contact record.
tags:
- Contacts
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
responses:
'200':
description: Successfully updated contact
content:
application/json:
schema:
$ref: '#/components/schemas/Contact'
'400':
description: Bad request
'401':
description: Unauthorized
'404':
description: Contact not found
delete:
operationId: deleteContact
summary: Oracle Eloqua Delete a contact
description: >-
Delete a contact record by its identifier.
tags:
- Contacts
parameters:
- $ref: '#/components/parameters/id'
responses:
'204':
description: Contact deleted successfully
'401':
description: Unauthorized
'404':
description: Contact not found
/data/contact/{id}/membership:
get:
operationId: getContactListMembership
summary: Oracle Eloqua Get contact list membership
description: >-
Retrieve the contact lists to which a contact belongs.
tags:
- Contacts
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: Successfully retrieved membership
content:
application/json:
schema:
type: object
properties:
elements:
type: array
items:
$ref: '#/components/schemas/ContactList'
'401':
description: Unauthorized
'404':
description: Contact not found
/data/accounts:
post:
operationId: searchAccounts
summary: Oracle Eloqua Search accounts
description: >-
Retrieve a list of account records matching the specified criteria.
tags:
- Accounts
parameters:
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/depth'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
- $ref: '#/components/parameters/orderBy'
responses:
'200':
description: Successfully retrieved accounts
content:
application/json:
schema:
$ref: '#/components/schemas/QueryResultAccount'
'400':
description: Bad request
'401':
description: Unauthorized
/data/account/{id}:
get:
operationId: getAccount
summary: Oracle Eloqua Retrieve an account
description: >-
Retrieve a single account record by its identifier.
tags:
- Accounts
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/depth'
responses:
'200':
description: Successfully retrieved account
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
'401':
description: Unauthorized
'404':
description: Account not found
/data/account/{id}/membership:
get:
operationId: getAccountGroupMembership
summary: Oracle Eloqua Get account group membership
description: >-
Retrieve the account groups to which an account belongs.
tags:
- Accounts
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: Successfully retrieved membership
content:
application/json:
schema:
type: object
properties:
elements:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
'401':
description: Unauthorized
'404':
description: Account not found
/assets/campaigns:
get:
operationId: listCampaigns
summary: Oracle Eloqua List campaigns
description: >-
Retrieve all campaigns matching the specified criteria.
tags:
- Campaigns
parameters:
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/depth'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
- $ref: '#/components/parameters/orderBy'
- $ref: '#/components/parameters/lastUpdatedAt'
responses:
'200':
description: Successfully retrieved campaigns
content:
application/json:
schema:
$ref: '#/components/schemas/QueryResultCampaign'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/campaign:
post:
operationId: createCampaign
summary: Oracle Eloqua Create a campaign
description: >-
Create a new marketing campaign.
tags:
- Campaigns
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Campaign'
responses:
'201':
description: Campaign created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Campaign'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/campaign/{id}:
get:
operationId: getCampaign
summary: Oracle Eloqua Retrieve a campaign
description: >-
Retrieve a single campaign by its identifier.
tags:
- Campaigns
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/depth'
responses:
'200':
description: Successfully retrieved campaign
content:
application/json:
schema:
$ref: '#/components/schemas/Campaign'
'401':
description: Unauthorized
'404':
description: Campaign not found
put:
operationId: updateCampaign
summary: Oracle Eloqua Update a campaign
description: >-
Update an existing campaign.
tags:
- Campaigns
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Campaign'
responses:
'200':
description: Successfully updated campaign
content:
application/json:
schema:
$ref: '#/components/schemas/Campaign'
'400':
description: Bad request
'401':
description: Unauthorized
'404':
description: Campaign not found
delete:
operationId: deleteCampaign
summary: Oracle Eloqua Delete a campaign
description: >-
Delete a campaign by its identifier.
tags:
- Campaigns
parameters:
- $ref: '#/components/parameters/id'
responses:
'204':
description: Campaign deleted successfully
'401':
description: Unauthorized
'404':
description: Campaign not found
/assets/campaign/active/{id}:
post:
operationId: activateCampaign
summary: Oracle Eloqua Activate a campaign
description: >-
Activate a campaign, changing its status from Draft to Active.
tags:
- Campaigns
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: Campaign activated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Campaign'
'401':
description: Unauthorized
'404':
description: Campaign not found
/assets/campaign/draft/{id}:
post:
operationId: deactivateCampaign
summary: Oracle Eloqua Deactivate a campaign
description: >-
Deactivate a campaign, changing its status from Active to Draft.
tags:
- Campaigns
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: Campaign deactivated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Campaign'
'401':
description: Unauthorized
'404':
description: Campaign not found
/assets/emails:
get:
operationId: listEmails
summary: Oracle Eloqua List emails
description: >-
Retrieve all email assets matching the specified criteria.
tags:
- Emails
parameters:
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/depth'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
- $ref: '#/components/parameters/orderBy'
- $ref: '#/components/parameters/lastUpdatedAt'
responses:
'200':
description: Successfully retrieved emails
content:
application/json:
schema:
$ref: '#/components/schemas/QueryResultEmail'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/email:
post:
operationId: createEmail
summary: Oracle Eloqua Create an email
description: >-
Create a new email asset.
tags:
- Emails
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Email'
responses:
'201':
description: Email created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Email'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/email/{id}:
get:
operationId: getEmail
summary: Oracle Eloqua Retrieve an email
description: >-
Retrieve a single email asset by its identifier.
tags:
- Emails
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/depth'
- name: noMergeContent
in: query
description: Whether email components are dynamically populated
schema:
type: boolean
default: true
responses:
'200':
description: Successfully retrieved email
content:
application/json:
schema:
$ref: '#/components/schemas/Email'
'401':
description: Unauthorized
'404':
description: Email not found
put:
operationId: updateEmail
summary: Oracle Eloqua Update an email
description: >-
Update an existing email asset.
tags:
- Emails
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Email'
responses:
'200':
description: Successfully updated email
content:
application/json:
schema:
$ref: '#/components/schemas/Email'
'400':
description: Bad request
'401':
description: Unauthorized
'404':
description: Email not found
delete:
operationId: deleteEmail
summary: Oracle Eloqua Delete an email
description: >-
Delete an email asset by its identifier.
tags:
- Emails
parameters:
- $ref: '#/components/parameters/id'
responses:
'204':
description: Email deleted successfully
'401':
description: Unauthorized
'404':
description: Email not found
/assets/email/deployment:
post:
operationId: createEmailDeployment
summary: Oracle Eloqua Create an email deployment
description: >-
Create and send an email deployment to a specified contact list or segment.
tags:
- Emails
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EmailDeployment'
responses:
'201':
description: Email deployment created
content:
application/json:
schema:
$ref: '#/components/schemas/EmailDeployment'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/email/deployment/{id}:
get:
operationId: getEmailDeployment
summary: Oracle Eloqua Retrieve an email deployment
description: >-
Retrieve an email deployment by its identifier.
tags:
- Emails
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: Successfully retrieved email deployment
content:
application/json:
schema:
$ref: '#/components/schemas/EmailDeployment'
'401':
description: Unauthorized
'404':
description: Deployment not found
/assets/forms:
get:
operationId: listForms
summary: Oracle Eloqua List forms
description: >-
Retrieve all form assets matching the specified criteria.
tags:
- Forms
parameters:
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/depth'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
- $ref: '#/components/parameters/orderBy'
responses:
'200':
description: Successfully retrieved forms
content:
application/json:
schema:
$ref: '#/components/schemas/QueryResultForm'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/form:
post:
operationId: createForm
summary: Oracle Eloqua Create a form
description: >-
Create a new form asset.
tags:
- Forms
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Form'
responses:
'201':
description: Form created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Form'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/form/{id}:
get:
operationId: getForm
summary: Oracle Eloqua Retrieve a form
description: >-
Retrieve a single form asset by its identifier.
tags:
- Forms
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/depth'
responses:
'200':
description: Successfully retrieved form
content:
application/json:
schema:
$ref: '#/components/schemas/Form'
'401':
description: Unauthorized
'404':
description: Form not found
put:
operationId: updateForm
summary: Oracle Eloqua Update a form
description: >-
Update an existing form asset.
tags:
- Forms
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Form'
responses:
'200':
description: Successfully updated form
content:
application/json:
schema:
$ref: '#/components/schemas/Form'
'400':
description: Bad request
'401':
description: Unauthorized
'404':
description: Form not found
delete:
operationId: deleteForm
summary: Oracle Eloqua Delete a form
description: >-
Delete a form asset by its identifier.
tags:
- Forms
parameters:
- $ref: '#/components/parameters/id'
responses:
'204':
description: Form deleted successfully
'401':
description: Unauthorized
'404':
description: Form not found
/data/form/{id}:
get:
operationId: getFormData
summary: Oracle Eloqua Retrieve form submission data
description: >-
Retrieve submission data for a specific form.
tags:
- Forms
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/page'
responses:
'200':
description: Successfully retrieved form data
content:
application/json:
schema:
type: object
properties:
elements:
type: array
items:
$ref: '#/components/schemas/FormData'
page:
type: integer
pageSize:
type: integer
total:
type: integer
'401':
description: Unauthorized
'404':
description: Form not found
post:
operationId: createFormData
summary: Oracle Eloqua Submit form data
description: >-
Create a new form submission for the specified form.
tags:
- Forms
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/FormData'
responses:
'201':
description: Form data submitted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/FormData'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/landingPages:
get:
operationId: listLandingPages
summary: Oracle Eloqua List landing pages
description: >-
Retrieve all landing page assets matching the specified criteria.
tags:
- Landing Pages
parameters:
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/depth'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
- $ref: '#/components/parameters/orderBy'
responses:
'200':
description: Successfully retrieved landing pages
content:
application/json:
schema:
$ref: '#/components/schemas/QueryResultLandingPage'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/landingPage:
post:
operationId: createLandingPage
summary: Oracle Eloqua Create a landing page
description: >-
Create a new landing page asset.
tags:
- Landing Pages
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LandingPage'
responses:
'201':
description: Landing page created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/LandingPage'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/landingPage/{id}:
get:
operationId: getLandingPage
summary: Oracle Eloqua Retrieve a landing page
description: >-
Retrieve a single landing page asset by its identifier.
tags:
- Landing Pages
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/depth'
responses:
'200':
description: Successfully retrieved landing page
content:
application/json:
schema:
$ref: '#/components/schemas/LandingPage'
'401':
description: Unauthorized
'404':
description: Landing page not found
put:
operationId: updateLandingPage
summary: Oracle Eloqua Update a landing page
description: >-
Update an existing landing page asset.
tags:
- Landing Pages
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LandingPage'
responses:
'200':
description: Successfully updated landing page
content:
application/json:
schema:
$ref: '#/components/schemas/LandingPage'
'400':
description: Bad request
'401':
description: Unauthorized
'404':
description: Landing page not found
delete:
operationId: deleteLandingPage
summary: Oracle Eloqua Delete a landing page
description: >-
Delete a landing page asset by its identifier.
tags:
- Landing Pages
parameters:
- $ref: '#/components/parameters/id'
responses:
'204':
description: Landing page deleted successfully
'401':
description: Unauthorized
'404':
description: Landing page not found
/assets/customObjects:
get:
operationId: listCustomObjects
summary: Oracle Eloqua List custom objects
description: >-
Retrieve all custom object definitions.
tags:
- Custom Objects
parameters:
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/depth'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
- $ref: '#/components/parameters/orderBy'
responses:
'200':
description: Successfully retrieved custom objects
content:
application/json:
schema:
$ref: '#/components/schemas/QueryResultCustomObject'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/customObject:
post:
operationId: createCustomObject
summary: Oracle Eloqua Create a custom object
description: >-
Create a new custom object definition.
tags:
- Custom Objects
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObject'
responses:
'201':
description: Custom object created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObject'
'400':
description: Bad request
'401':
description: Unauthorized
/assets/customObject/{id}:
get:
operationId: getCustomObject
summary: Oracle Eloqua Retrieve a custom object
description: >-
Retrieve a custom object definition by its identifier.
tags:
- Custom Objects
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/depth'
responses:
'200':
description: Successfully retrieved custom object
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObject'
'401':
description: Unauthorized
'404':
description: Custom object not found
put:
operationId: updateCustomObject
summary: Oracle Eloqua Update a custom object
description: >-
Update an existing custom object definition.
tags:
- Custom Objects
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObject'
responses:
'200':
description: Successfully updated custom object
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObject'
'400':
description: Bad request
'401':
description: Unauthorized
'404':
description: Custom object not found
delete:
operationId: deleteCustomObject
summary: Oracle Eloqua Delete a custom object
description: >-
Delete a custom object definition by its identifier.
tags:
- Custom Objects
parameters:
- $ref: '#/components/parameters/id'
responses:
'204':
description: Custom object deleted successfully
'401':
description: Unauthorized
'404':
description: Custom object not found
/data/customObject/{parentId}/instances:
get:
operationId: listCustomObjectData
summary: Oracle Eloqua List custom object data instances
description: >-
Retrieve data instances for a specific custom object.
tags:
- Custom Objects
parameters:
- name: parentId
in: path
required: true
description: The custom object definition identifier
schema:
type: string
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/search'
responses:
'200':
description: Successfully retrieved custom object data
content:
application/json:
schema:
type: object
properties:
elements:
type: array
items:
$ref: '#/components/schemas/CustomObjectData'
page:
type: integer
pageSize:
type: integer
total:
type: integer
'401':
description: Unauthorized
'404':
description: Custom object not found
/data/customObject/{parentId}/instance:
post:
operationId: createCustomObjectData
summary: Oracle Eloqua Create a custom object data instance
description: >-
Create a new data instance for a specific custom object.
tags:
- Custom Objects
parameters:
- name: parentId
in: path
required: true
description: The custom object definition identifier
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObjectData'
responses:
'201':
description: Custom object data created
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObjectData'
'400':
description: Bad request
'401':
description: Unauthorized
/data/customObject/{parentId}/instance/{id}:
get:
operationId: getCustomObjectData
summary: Oracle Eloqua Retrieve a custom object data instance
description: >-
Retrieve a specific data instance from a custom object.
tags:
- Custom Objects
parameters:
- name: parentId
in: path
required: true
description: The custom object definition identifier
schema:
type: string
- $ref: '#/components/parameters/id'
responses:
'200':
description: Successfully retrieved custom object data
content:
application/json:
schema:
$ref: '#/components/schemas/CustomObjectData'
'401':
description: Unauthorized
'404':
description: Instance not found
put:
operationId: updateCustomObjectData
summary: Oracle Eloqua Update a custom object data instance
description: >-
Update an existing data instance for a custom object.
tags:
- Custom Objects
parameters
# --- truncated at 32 KB (74 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/eloqua/refs/heads/main/openapi/eloqua-rest-openapi.yml