openapi: 3.1.0 info: title: Oracle Eloqua Bulk Account Exports Contact Segments API description: The Bulk API for Oracle Eloqua Marketing Cloud Service, designed for high-volume data operations including imports, exports, and synchronization of large datasets for contacts, accounts, activities, and custom objects. version: '2.0' contact: name: Oracle Support url: https://support.oracle.com/ termsOfService: https://www.oracle.com/legal/terms.html servers: - url: https://secure.p01.eloqua.com/API/Bulk/2.0 description: Eloqua Bulk API v2.0 (pod may vary per instance) security: - basicAuth: [] - oAuth2: [] tags: - name: Contact Segments description: Create and manage contact segments paths: /assets/contact/segments: get: operationId: listContactSegments summary: Oracle Eloqua List contact segments description: Retrieve all contact segments matching the specified criteria. tags: - Contact Segments 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 contact segments content: application/json: schema: $ref: '#/components/schemas/QueryResultContactSegment' '400': description: Bad request '401': description: Unauthorized /assets/contact/segment: post: operationId: createContactSegment summary: Oracle Eloqua Create a contact segment description: Create a new contact segment. tags: - Contact Segments requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ContactSegment' responses: '201': description: Segment created successfully content: application/json: schema: $ref: '#/components/schemas/ContactSegment' '400': description: Bad request '401': description: Unauthorized /assets/contact/segment/{id}: get: operationId: getContactSegment summary: Oracle Eloqua Retrieve a contact segment description: Retrieve a single contact segment by its identifier. tags: - Contact Segments parameters: - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/depth' responses: '200': description: Successfully retrieved contact segment content: application/json: schema: $ref: '#/components/schemas/ContactSegment' '401': description: Unauthorized '404': description: Segment not found put: operationId: updateContactSegment summary: Oracle Eloqua Update a contact segment description: Update an existing contact segment. tags: - Contact Segments parameters: - $ref: '#/components/parameters/id' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ContactSegment' responses: '200': description: Successfully updated contact segment content: application/json: schema: $ref: '#/components/schemas/ContactSegment' '400': description: Bad request '401': description: Unauthorized '404': description: Segment not found delete: operationId: deleteContactSegment summary: Oracle Eloqua Delete a contact segment description: Delete a contact segment by its identifier. tags: - Contact Segments parameters: - $ref: '#/components/parameters/id' responses: '204': description: Segment deleted successfully '401': description: Unauthorized '404': description: Segment not found components: parameters: orderBy: name: orderBy in: query description: Field to sort results by (e.g., createdAt DESC) schema: type: string id: name: id in: path required: true description: The unique identifier of the resource schema: type: string count: name: count in: query description: Maximum number of entities to return (1-1000) schema: type: integer minimum: 1 maximum: 1000 depth: name: depth in: query description: Level of detail returned for the entity schema: type: string enum: - minimal - partial - complete default: minimal page: name: page in: query description: Page number to return (starts at 1) schema: type: integer minimum: 1 default: 1 search: name: search in: query description: Search criteria for filtering results schema: type: string schemas: ContactSegment: type: object properties: id: type: string description: Unique identifier for the segment readOnly: true name: type: string description: Segment name description: type: string description: Segment description count: type: integer description: Number of contacts in the segment readOnly: true lastCalculatedAt: type: string description: When the segment was last calculated (Unix time) readOnly: true elements: type: array description: Segment filter criteria items: type: object properties: id: type: string name: type: string type: type: string folderId: type: string description: Containing folder identifier readOnly: true createdAt: type: string description: Creation timestamp (Unix time) readOnly: true updatedAt: type: string description: Last update timestamp (Unix time) readOnly: true depth: type: string description: Level of detail returned readOnly: true type: type: string description: Asset type in Eloqua readOnly: true QueryResultContactSegment: type: object properties: elements: type: array items: $ref: '#/components/schemas/ContactSegment' page: type: integer pageSize: type: integer total: type: integer securitySchemes: basicAuth: type: http scheme: basic description: HTTP Basic authentication using company\username and password in the format CompanyName\Username. oAuth2: type: oauth2 description: OAuth 2.0 authorization code flow flows: authorizationCode: authorizationUrl: https://login.eloqua.com/auth/oauth2/authorize tokenUrl: https://login.eloqua.com/auth/oauth2/token scopes: full: Full access to all Eloqua resources externalDocs: description: Oracle Eloqua Bulk API Documentation url: https://docs.oracle.com/en/cloud/saas/marketing/eloqua-rest-api/BulkAPI.html