Named Accounts

Named Accounts Endpoint Reference

Marketo offers a set of APIs for performing CRUD operations on named accounts for use with Marketo ABM.  These APIs follow the standard interface pattern for lead database APIs, providing Describe, Create/Update, Delete, and Query options.


At this time, the only ABM related functions available via Marketo’s APIs are the CRUD operations for named accounts; Leads cannot be linked to named accounts via any APIs.


Describing Named Accounts will return metadata related to the usage of named accounts via Marketo’s APIs, including a list of valid searchable fields when querying, and a list of all fields available for API usage.  The idField of a named account is always marketoGUID, and the only available dedupeField, and key for creation is the name field of the object.


Querying for named accounts is based on the usage of a filterType and a set of up to 300 comma-separated filterValues.  filterType may be any single field returned in the searchableFields member of the describe result for named accounts, while filterValues may be any valid input for the datatype of the field.  To return a specific set of fields from, a fields parameter must be passed, where the value is a comma-separated list of fields to be returned in the response.  Like other query options, the maximum number of records for a single query page is 300, and additional records in the set must be requested with the usage of the nextPageToken returned by the call.

Create and Update

Creating and updating named accounts follows the standard lead database pattern.  Records must be passed in the input member of a JSON body in a POST request.  input is the only required member, with action and dedupeBy as optional members.  Up to 300 records may be included in the input.  action may be one of createOnly, updateOnly, or createOrUpdate.  If unspecified, action will default to createOrUpdate.  dedupeBy may only be specified when action is updateOnly, and only accepts one of dedupeFields or idField, which correspond to the name and marketoGUID fields, respectively.


Deletions are done via a JSON POST request and has a required input member, and an optional deleteBy member.  deleteBy may be one of “dedupeFields” or “idField”, corresponding to name or marketoGUID, respectively, and will default to dedupeFields if unset.  The input member accepts an array of up to 300 records, containing one member each, either name or marketoGUID depending on the setting of deleteBy.