1 / 27

Safe Harbor Statement

amelia
Download Presentation

Safe Harbor Statement

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Safe Harbor Statement

  2. Automation Strategies with the Eloqua API An Oracle | Eloqua Power Hour Powered by

  3. Presenters T.J. Fields – Oracle | Eloqua, Senior Product Manager Chris Campbell – Oracle | Eloqua, Senior Product Manager

  4. Power Hour Agenda • First, Some Background • A Closer Look • Using Eloqua’s RESTful APIs • Where to find information

  5. In the beginning Eloqua’s first public API • Basic entity CRUD operations • Bulk operations (DTS) 2008

  6. Extending the marketing automation system Step-based Apps (Cloud Connectors) • Perform external operations on campaign members 2008 2014

  7. Time for REST Application API • Built for E10 • Asset & Data Access • Real time! 2008 2014

  8. Scale It… Bulk API 1.0 • Simple • Scalable • Complete RESTful APIs 2008 2014

  9. Activities Anyone? Bulk API 2.0 • Retrieve Activity Data • Enhanced Filtering capabilities offers more customized datasets • Access to import errors in the staging area RESTful APIs 2008 2014

  10. A Closer Look

  11. API Uses Many possibilities • Integration with external systems • Build Cloud “Apps” • appcloud.eloqua.com • Solve more complex use cases • Perform specific, repeatable tasks or functions

  12. SOAP Eloqua’s APIs • Protocol for exchanging data relies on XML. Eloqua's SOAP API has been available since 2008 (primarily used with the E9 platform) Direct Access • Web services • Single record create/update and multiple record retrieval • Data and asset creation available • E10 is built using this API Bulk • Web services • Designed to handle large volumes of records • Import/export of Data • Contacts, Custom Objects, Activities, Cloud Connectors

  13. Eloqua’s APIs Current Status Consumers • 3rd Party Apps & Integrations • CRM Integration • Eloqua Apps • E10, Mailer, EPP • AppCloud Apps • SOAP APIs (v1 – 1.2) • Maintenance only, heavily used • Direct Access RESTful APIs • Broad access to most of Application • Bulk Access RESTful API • access to a subset of the system

  14. Using Eloqua’s RESTful APIs

  15. Uri Format Eloqua REST APIs https://<host>/api/<context>/<version>/<resource>[/<resource id>][/child resource>][/<child resource id>][?parameters] All endpoints in a given API will have the same root/base Uri (not including host). https://secure.eloqua.com/api/bulk/1.0 An example of the format in use is: https://secure.eloqua.com/api/bulk/1.0/contact/lists?page=2&pageSize=50 An example with child resources: https://secure.eloqua.com/api/bulk/1.0/customObject/5/field/6

  16. REST API: Process Overview • Authenticate • Determine endpoint from Eloqua API (https://login.eloqua.com/id) • Basic HTTP authentication or OAUTH • Construct object • Needed for POST, PUT • Not needed for GET, DELETE • Call the API endpoint • /assets/contact/fields?depth=complete&count=1&page=1 • Full list of parameters: http://topliners.eloqua.com/community/code_it/blog/2012/09/27/eloqua-rest-api--request-url-parameters • Read response (next slide)

  17. REST API: Response (JSON) {"elements": [ {"type":"ContactField", "id":"100001", "createdAt":"-2208970800", "depth":"complete", "name":"Email Address", "updatedAt":"1305742610", "updatedBy":"8", "dataType":"text", "displayType":"text", "internalName":"C_EmailAddress", "isReadOnly":"false", "isRequired":"false", "isStandard":"true", "isAccountLinkageField":"false", "isPopulatedInOutlookPlugin":"false", "updateType":"always" }, {"type":"ContactField", "id":"100002", "createdAt":"-2208970800", "depth":"complete", "name":"First Name", "updatedAt":"1285431903", "dataType":"text", "displayType":"text", "internalName":"C_FirstName", "isReadOnly":"false", "isRequired":"false", "isStandard":"true", "isAccountLinkageField":"false", "isPopulatedInOutlookPlugin":"false", "updateType":"newNotBlank" }, ...

  18. Common Patterns Eloqua REST APIs • CRUD support using POST, GET, PUT and DELETE • POST /contact/import • GET /contact/import/5 • PUT /contact/import/5 • DELETE /contact/import/5 • Search using GET with plural resource • GET /contact/imports?page=2&pageSize=50&search=name=a*&orderBy=name%20ASC POST Tunneling available with X-HTTP-Method-Override header

  19. Partial Requests Eloqua REST APIs • depth • Minimal/partial/complete • fields • Json syntax • fieldsUri • Persisted fields value, for re-use

  20. Response Codes & Errors Eloqua REST APIs Status Code Tunneling available with X-HTTP-Status-Code-Override header • Status Codes • 2XX for success (200/201/204) • 4XX for client resolvable error (400/401/403/404/409/412/413) • 5XX for server error (500/503) • Error Responses • Path to invalid Field • Invalid value • Failed constraint text { "failures": [ { "field": "destinationUri", "value": "/contact/list/47155555", "constraint": "Must reference an existing item, by uri." } ] }

  21. Async Processing (Bulk API) Eloqua REST APIs • Import Flow • Create Import definition • POST data to staging area • Create sync task & monitor • Export Flow • Create Export definition • Create sync task & monitor • GET data from staging area Staged data access

  22. Where to find information

  23. Code It Eloqua’sDeveloper Community

  24. Thank you and Questions…

More Related