openapi: 3.2.0 info: title: REST API for Oracle Eloqua Marketing Cloud Service Application/2.0/Programs API description: The Oracle Eloqua Marketing Cloud Service REST APIs enable you to extend the functionality of the product, build Apps, and perform high volume data transfers. version: 2026.08.07 x-summary: The Oracle Eloqua Marketing Cloud Service REST APIs enable you to extend the functionality of the product, build Apps, and perform high volume data transfers. tags: - name: Application/2.0/Programs description: "Programs API endpoints.\n\t\nLearn more about Programs." paths: /api/rest/2.0/assets/program: post: operationId: CreateIndividualPOSTRest20 summary: Create a program description: Creates a program. responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-program-post x-filename-id: api-rest-2.0-assets-program-post requestBody: content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' description: The request body defines the details of the program to be created. required: true /api/rest/2.0/assets/program/{id}: get: operationId: ReadIndividualGETRest20 parameters: - name: id in: path description: Id of the program to retrieve. required: true schema: type: integer - name: depth in: query description: 'Level of detail returned by the request. Eloqua APIs can retrieve entities at three different levels of depth: minimal, partial, and complete. Any other values passed are reset to complete by default. For more information, see Request depth.' required: false schema: type: string summary: Retrieve a program description: Retrieves the program specified by the id parameter. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-program-{id}-get x-filename-id: api-rest-2.0-assets-program-id-get put: operationId: UpdateIndividualPUTRest20 parameters: - name: id in: path description: Id of the program to update. required: true schema: type: integer summary: Update a program description: Updates the program specified by the id parameter. All properties should be included in PUT requests, as some properties will be considered blank if not included. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-program-{id}-put x-filename-id: api-rest-2.0-assets-program-id-put requestBody: content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' description: The request body defines the details of the program to be updated. required: true delete: operationId: DeleteIndividualDELETERest20 parameters: - name: id in: path description: Id of the program to delete. required: true schema: type: integer summary: Delete a program description: Deletes the program specified by the id parameter. responses: '200': description: OK '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-program-{id}-delete x-filename-id: api-rest-2.0-assets-program-id-delete /api/rest/2.0/assets/program/active/{id}: post: operationId: ActivateIndividualPOSTRest20 parameters: - name: scheduledFor in: query description: The date and time for the program to activate on expressed in Unix time. Alternatively, you can activate the campaign immediately by specifying now. required: false schema: type: string - name: id in: path description: Id of the program. required: true schema: type: integer - name: runAsUserId in: query description: The username to activate the program required: false schema: type: integer summary: Activate a program description: Activates the program specified by the id parameter. responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-program-active-{id}-post x-filename-id: api-rest-2.0-assets-program-active-id-post /api/rest/2.0/assets/program/draft/{id}: post: operationId: DeactivateIndividualPOSTRest20 parameters: - name: id in: path description: Id of the program to deactivate. required: true schema: type: integer summary: Deactivate a program description: Deactivates the program specified by the id parameter. responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-program-draft-{id}-post x-filename-id: api-rest-2.0-assets-program-draft-id-post /api/rest/2.0/assets/program/pause/{id}: post: operationId: PauseIndividualPOSTRest20 parameters: - name: id in: path description: Id of the program to pause. required: true schema: type: integer summary: Pause a program description: Pauses the program specified by the id parameter. responses: '201': description: Success content: application/json: schema: $ref: '#/components/schemas/ProgramRest20' '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-program-pause-{id}-post x-filename-id: api-rest-2.0-assets-program-pause-id-post /api/rest/2.0/assets/programs: get: operationId: SearchGETRest20 parameters: - name: depth in: query description: 'Level of detail returned by the request. Eloqua APIs can retrieve entities at three different levels of depth: minimal, partial, and complete. The default value is minimal.' required: false schema: type: string - name: count in: query description: Maximum number of entities to return. Must be less than or equal to 1000 and greater than or equal to 1. required: false schema: type: integer - name: page in: query description: Specifies which page of entities to return (the count parameter defines the number of entities per page). If the page parameter is not supplied, 1 will be used by default. required: false schema: type: integer - name: search in: query description: Specifies the search criteria used to retrieve entities. See the tutorial for information about using this parameter. required: false schema: type: string - name: orderBy in: query description: Specifies the field by which list results are ordered. required: false schema: type: string - name: lastUpdatedAt in: query description: The date and time the program was last updated. required: false schema: type: integer summary: Retrieve a list of programs description: Retrieves a list of programs. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/QueryResultProgramRest20' '400': description: Bad request. See Status Codes for information about other possible HTTP status codes. '401': description: Unauthorized. See Status Codes for information about other possible HTTP status codes. '403': description: Forbidden. See Status Codes for information about other possible HTTP status codes. '404': description: The requested resource was not found. See Status Codes for information about other possible HTTP status codes. '500': description: The service has encountered an error. See Status Codes for information about other possible HTTP status codes. tags: - Application/2.0/Programs x-internal-id: api-rest-2.0-assets-programs-get x-filename-id: api-rest-2.0-assets-programs-get components: schemas: CampaignOutputTerminalRest20: title: CampaignOutputTerminal properties: type: type: string description: 'The asset''s type in Eloqua. This is a read-only property. ' id: type: string readOnly: true description: Id of the campaign output terminal. This is a read-only property. currentStatus: type: string description: The campaign output terminal's current status. name: type: string description: Name of the campaign output terminal. description: type: string description: The description of the campaign output terminal. permissions: type: array description: The permissions for the campaign output terminal granted to your current instance. items: type: string folderId: type: string readOnly: true description: Id of the associated folder. sourceTemplateId: type: string description: The id of the source template. createdBy: type: string readOnly: true description: The login id of the user who created the campaign output terminal. createdByName: type: string description: The name of the user who created the campaign output terminal. createdAt: type: string readOnly: true description: The date and time the campaign output terminal was created, expressed in Unix time. updatedBy: type: string readOnly: true description: The login id of the user that last updated the campaign output terminal. updatedByName: type: string description: The name of the user who last updated the campaign output terminal. updatedAt: type: string readOnly: true description: Unix timestamp for the date and time the campaign output terminal was last updated. This is a read-only property. scheduledFor: type: string readOnly: true description: The date the campaign output terminal is scheduled. depth: type: string readOnly: true description: 'Level of detail returned by the request. Eloqua APIs can retrieve entities at three different levels of depth: minimal, partial, and complete. For more information, see Request depth.' terminalType: type: string description: The campaign output terminal type. This is a read-only property. connectedType: type: string description: The campaign output terminal's connection type. This is a read-only property. connectedId: type: string description: The connected id of the campaign output terminal. This is a read-only property. CampaignElementRest20: title: CampaignElement properties: type: type: string description: The asset's type in Eloqua. This is a read-only property. id: type: string readOnly: true description: Id of the campaign element. This is a read-only property. currentStatus: type: string description: The campaign element's current status. name: type: string description: Name of the campaign element. This is a read-only property. description: type: string description: The description of the campaign element. permissions: type: array description: The permissions for the campaign element granted to your current instance. This is a read-only property. items: type: string folderId: type: string readOnly: true description: Id of the associated folder. sourceTemplateId: type: string description: The id of the source template. createdBy: type: string readOnly: true description: The login id of the user who created the campaign element. createdByName: type: string description: The name of the user who created the campaign element. createdAt: type: string readOnly: true description: 'The date and time the campaign element was created, expressed in Unix time. ' updatedBy: type: string readOnly: true description: The login id of the user that last updated the campaign element. updatedByName: type: string description: The name of the user who last updated the campaign element. updatedAt: type: string readOnly: true description: Unix timestamp for the date and time the campaign element was last updated. scheduledFor: type: string readOnly: true description: The date the campaign element is scheduled. depth: type: string readOnly: true description: 'Level of detail returned by the request. Eloqua APIs can retrieve entities at three different levels of depth: minimal, partial, and complete. Any other values passed are reset to complete by default. For more information, see Request depth.' position: $ref: '#/components/schemas/PositionRest20' description: Array of campaign element position fields. outputTerminals: type: array description: A list of the campaign element ids within the campaign. This is a read-only property. items: $ref: '#/components/schemas/CampaignOutputTerminalRest20' memberCount: type: string description: Amount of members within the campaign element. This is a read-only property. memberErrorCount: type: string description: Amount of members within the campaign element in errored status. This is a read-only property. ProgramRest20: title: Program properties: type: type: string description: The asset's type in Eloqua. This is a read-only property. id: type: string readOnly: true description: Id of the program. currentStatus: type: string description: 'The program''s current status: Active, Draft, Scheduled, Paused, or Completed.' name: type: string description: The name of the program. description: type: string description: The description of the program. permissions: type: array description: The permissions for the program granted to your current instance. This is a read-only property. items: type: string folderId: type: string readOnly: true description: The folder id of the folder which contains the program. sourceTemplateId: type: string description: Id of the template used to create the asset. createdBy: type: string readOnly: true description: The login id of the user who created the program. createdByName: type: string description: The name of the user who created the program. createdAt: type: string readOnly: true description: The date and time the program was created, expressed in Unix time. updatedBy: type: string readOnly: true description: The login id of the user that last updated the program. updatedByName: type: string description: The name of the user who last updated the program. updatedAt: type: string readOnly: true description: Unix timestamp for the date and time the program was last updated. This is a read-only property. scheduledFor: type: string readOnly: true description: The date the program is scheduled. depth: type: string readOnly: true description: 'Level of detail returned by the request. Eloqua APIs can retrieve entities at three different levels of depth: minimal, partial, and complete. Any other values passed are reset to complete by default. For more information, see Request depth.' elements: type: array description: A list of program elements. items: $ref: '#/components/schemas/CampaignElementRest20' isReadOnly: type: string description: Whether or not the program is read only. runAsUserId: type: string description: The login id of the user to activate the program. isExitHistoryDisabled: type: string description: Whether or not the Exit History is disabled due to high volume. This is a read-only property. isBypassHistoryDisabled: type: string description: Whether or not the Bypass History is disabled due to high volume. This is a read-only property. isMemberAllowedDuplicates: type: string description: Whether contacts are allowed to enter the program more than once. If false, once a contact enters the program, the contact cannot enter the program again from another entry point. defaultEntityType: type: string description: The program type, possible values are Contact or CustomObjectRecords. defaultEntityId: type: string description: The id of the custom object data set. Only used for custom object programs. PositionRest20: title: Position properties: type: type: string description: The campaign element's type. This is a read-only property. x: type: string description: The position of the campaign element on the x axis. y: type: string description: The position of the campaign element on the y axis. QueryResultProgramRest20: title: QueryResultProgram properties: type: type: string description: The asset's type in Eloqua. elements: type: array description: Array of program fields. items: $ref: '#/components/schemas/ProgramRest20' total: type: integer description: The total amount of results. pageSize: type: integer description: The page size. page: type: integer description: The specified page.