openapi: 3.2.0 info: description: Marketo Engage Rest API version: '1.0' title: Marketo Engage Rest Sales Persons API termsOfService: https://www.adobe.com/legal.html contact: name: Adobe Developer Relations url: https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/home email: '' license: name: API License Agreement url: https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/api-license servers: - url: https://localhost:8080/ tags: - name: Sales Persons description: Sales Persons Controller paths: /rest/v1/salespersons.json: get: tags: - Sales Persons summary: Get SalesPersons description: 'Retrieves salesperson records from the destination instance based on the submitted filter. Required Permissions: Read-Only Sales Person, Read-Write Sales Person' operationId: getSalesPersonUsingGET parameters: - in: query name: filterType description: The sales person field to filter on. Searchable fields can be retrieved with the Describe Sales Person call. required: true schema: type: string - in: query name: filterValues description: Comma separated list of search values. required: true schema: type: array items: type: string - name: fields in: query description: Comma-separated list of fields to include in the response required: false style: form explode: true schema: type: array items: type: string - name: batchSize in: query description: The batch size to return. The max and default value is 300. required: false schema: type: integer format: int32 - name: nextPageToken in: query description: A token will be returned by this endpoint if the result set is greater than the batch size and can be passed in a subsequent call through this parameter. See Paging Tokens for more info. required: false schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfSalesPerson' post: tags: - Sales Persons summary: Sync SalesPersons description: 'Allows inserts, updates, or upserts of salespersons to the target instance. Required Permissions: Read-Write Sales Person' operationId: syncSalesPersonsUsingPOST responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfSalesPerson' requestBody: content: application/json: schema: $ref: '#/components/schemas/SyncSalesPersonRequest' description: syncSalesPersonRequest required: true /rest/v1/salespersons/delete.json: post: tags: - Sales Persons summary: Delete SalesPersons description: 'Deletes a list of salesperson records from the target instance. Input records should have only one member, based on the value of ''dedupeBy''. Required Permissions: Read-Write Sales Person' operationId: deleteSalesPersonUsingPOST responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfSalesPerson' requestBody: content: application/json: schema: $ref: '#/components/schemas/DeleteSalesPersonRequest' description: deleteSalesPersonRequest required: true /rest/v1/salespersons/describe.json: get: tags: - Sales Persons summary: Describe SalesPersons description: 'Returns metadata about salespersons and the fields available for interaction via the API. Required Permissions: Read-Only Sales Person, Read-Write Sales Person' operationId: describeUsingGET_5 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfObjectMetaData' components: schemas: RelatedObject: type: object required: - field - name properties: field: type: string description: Name of link field (within link object) name: type: string description: Name of the link object Error: type: object required: - code - message properties: code: type: string description: Error code of the error. See full list of error codes here message: type: string description: Message describing the cause of the error ObjectMetaData: type: object required: - createdAt - dedupeFields - description - displayName - pluralName - fields - idField - apiName - relationships - searchableFields - updatedAt - status - version properties: createdAt: type: string format: date-time description: Datetime when the object type was created dedupeFields: type: array description: List of dedupe fields. Arrays with multiple members are compound keys items: type: string description: type: string description: Description of the object type displayName: type: string description: UI display-name of the object type pluralName: type: string description: UI plural-name of the custom object type fields: type: array description: List of fields available on the object type items: $ref: '#/components/schemas/ObjectField' idField: type: string description: Primary id key of the object type apiName: type: string description: Name of the object type relationships: type: array description: List of relationships which the object has items: $ref: '#/components/schemas/ObjectRelation' searchableFields: type: array description: List of fields valid for use as a filter type in a query items: type: array items: type: string updatedAt: type: string format: date-time description: Datetime when the object type was most recently updated state: type: string description: Approval state of object type enum: - draft - approved - approvedWithDraft version: type: string description: Version of object type that is returned in response enum: - draft - approved ResponseOfObjectMetaData: type: object required: - errors - requestId - result - success - warnings properties: errors: type: array description: Array of errors that occurred if the request was unsuccessful items: $ref: '#/components/schemas/Error' moreResult: type: boolean example: false description: Boolean indicating if there are more results in subsequent pages nextPageToken: type: string description: Paging token given if the result set exceeded the allowed batch size requestId: type: string description: Id of the request made result: type: array description: Array of results for individual records in the operation, may be empty items: $ref: '#/components/schemas/ObjectMetaData' success: type: boolean example: false description: Whether the request succeeded warnings: type: array description: Array of warnings given for the operation items: $ref: '#/components/schemas/Warning' Warning: type: object required: - code - message properties: code: type: integer format: int32 description: Integer code of the warning message: type: string description: Message describing the warning SyncSalesPersonRequest: type: object required: - input properties: action: type: string description: Type of sync operation to perform enum: - createOnly - updateOnly - createOrUpdate dedupeBy: type: string description: Field to deduplicate on. If the value in the field for a given record is not unique, an error will be returned for the individual record. input: type: array description: List of input records items: $ref: '#/components/schemas/SalesPerson' DeleteSalesPersonRequest: type: object required: - input properties: deleteBy: type: string description: Key to use for deletion of the record input: type: array description: List of input records items: $ref: '#/components/schemas/SalesPerson' SalesPerson: type: object properties: id: type: integer format: int64 description: Unique integer id of the salesperson record reasons: type: array description: List of reasons why an operation did not succeed. Reasons are only present in API responses and should not be submitted items: $ref: '#/components/schemas/Reason' seq: type: integer format: int32 description: Integer indicating the sequence of the record in response. This value is correlated to the order of the records included in the request input. Seq should only be part of responses and should not be submitted. status: type: string description: Status of the operation performed on the record enum: - created - updated - deleted - skipped - added - removed Reason: type: object required: - code - message properties: code: type: string description: Integer code of the reason message: type: string description: Message describing the reason for the status of the operation ObjectField: type: object properties: dataType: type: string description: Datatype of the field displayName: type: string description: UI display-name of the field length: type: integer format: int32 description: Max length of the field. Only applicable to text, string, and text area. name: type: string description: Name of the field updateable: type: boolean example: false description: Whether the field is updateable crmManaged: type: boolean example: false description: Whether the field is managed by CRM (native sync) ObjectRelation: type: object required: - field - relatedTo - type properties: field: type: string description: API Name of link field relatedTo: description: Object to which the field is linked $ref: '#/components/schemas/RelatedObject' type: type: string description: Type of the relationship field ResponseOfSalesPerson: type: object required: - errors - requestId - result - success - warnings properties: errors: type: array description: Array of errors that occurred if the request was unsuccessful items: $ref: '#/components/schemas/Error' moreResult: type: boolean example: false description: Boolean indicating if there are more results in subsequent pages nextPageToken: type: string description: Paging token given if the result set exceeded the allowed batch size requestId: type: string description: Id of the request made result: type: array description: Array of results for individual records in the operation, may be empty items: $ref: '#/components/schemas/SalesPerson' success: type: boolean example: false description: Whether the request succeeded warnings: type: array description: Array of warnings given for the operation items: $ref: '#/components/schemas/Warning'