Optimizely Salespersons API

The Salespersons API from Optimizely — 7 operation(s) for salespersons.

Operations 11

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/v1/admin/Salespersons List salespersons · Returns the EntitySet Salespersons #
Ask an LLM
“Who are all the sales reps configured in my Optimizely commerce admin?”
“Can I filter salespersons to just outside reps?”
Tell an agent
List all salespersons.
Find salespersons matching {filter}.
POST /api/v1/admin/Salespersons Create a salesperson · Post a new entity to EntitySet Salespersons #
Ask an LLM
“How do I add a new sales rep with their number, email and phone?”
“Can I set a maximum discount percent when creating a salesperson?”
Tell an agent
Create salesperson {name} with number {salespersonNumber} and email {email}.
Add a new sales rep {name} reporting to sales manager {salesManagerId}.
GET /api/v1/admin/Salespersons({id}) Get one salesperson · Returns the entity with the key from Salespersons #
Ask an LLM
“What contact details are on file for a specific sales rep?”
“How do I see one salesperson's margin and discount limits?”
Tell an agent
Get salesperson {id}.
Show sales rep {id} with only the fields {select}.
PUT /api/v1/admin/Salespersons({id}) Replace a salesperson record · Replace entity in EntitySet Salespersons #
Ask an LLM
“How do I overwrite a sales rep's entire record in one request?”
“Can I replace all fields of a salesperson rather than patching a few?”
Tell an agent
Replace salesperson {id} with a full record named {name}, email {email}.
Overwrite the complete record for sales rep {id}.
DELETE /api/v1/admin/Salespersons({id}) Delete a salesperson · Delete entity in EntitySet Salespersons #
Ask an LLM
“How do I remove a single sales rep by ID?”
“Can I make a salesperson delete conditional on the record's ETag?”
Tell an agent destructive · confirm first
Delete salesperson {id}.
Delete sales rep {id} if the ETag still matches {ifMatch}.
PATCH /api/v1/admin/Salespersons({id}) Partially update a salesperson · Update entity in EntitySet Salespersons #
Ask an LLM
“Can I change just a sales rep's phone number or title?”
“How do I lower one salesperson's maximum discount percent?”
Tell an agent
Update the email of salesperson {id} to {email}.
Set the max discount for sales rep {id} to {maxDiscountPercent} percent.
GET /api/v1/admin/Salespersons/Default.Default() Get the default salesperson template · Call operation Default #
Ask an LLM
“What default values does a new salesperson record start with?”
“Is there a blank salesperson template I can fetch?”
Tell an agent
Fetch the default salesperson template.
Get default values for a new sales rep.
DELETE /api/v1/admin/salespersons/delete Bulk delete salespersons · Salespersons delete route #
Ask an LLM
“How do I delete several sales reps in one call?”
“Can I pass a list of IDs to remove multiple salespersons?”
Tell an agent destructive · confirm first
Bulk delete salespersons {ids}.
Remove all of these sales reps at once: {ids}.
GET /api/v1/admin/salespersons({key})/customerorders({customerorderKey}) Get an order handled by a salesperson · Salespersons get customer order by key and customerorderkey #
Ask an LLM
“How do I look up a specific customer order attributed to a sales rep?”
“Can I fetch one order from a salesperson's orders?”
Tell an agent
Get order {customerorderKey} for salesperson {key}.
Show customer order {customerorderKey} under sales rep {key}.
GET /api/v1/admin/salespersons({key})/customers({customerKey}) Get a customer assigned to a salesperson · Salespersons get customer by key and customerkey #
Ask an LLM
“How do I check a particular customer on a sales rep's account list?”
“Can I pull one customer record through its assigned salesperson?”
Tell an agent
Get customer {customerKey} assigned to salesperson {key}.
Show account {customerKey} from sales rep {key}'s customers.
GET /api/v1/admin/salespersons({key})/customproperties({custompropertyKey}) Get a custom property of a salesperson · Salespersons get custom property by key and custompropertykey #
Ask an LLM
“How do I read a custom property stored on a sales rep?”
“Can I fetch one custom field value for a salesperson?”
Tell an agent
Get custom property {custompropertyKey} of salesperson {key}.
Show custom field {custompropertyKey} on sales rep {key}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/optimizely:optimizely-salespersons-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

optimizely-salespersons-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: admin-v1
  title: Admin API V1 Salespersons API
servers:
- url: https://dogfood.commerce.insitesandbox.com
security: []
tags:
- name: Salespersons
paths:
  /api/v1/admin/Salespersons:
    get:
      tags:
      - Salespersons
      summary: Returns the EntitySet Salespersons
      operationId: Salespersons_Get
      parameters:
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $filter
        in: query
        description: Filters the results, based on a Boolean condition.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      - name: $apply
        in: query
        description: Aggregates the results according to one or more transformations.
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        description: Sorts the results.
        required: false
        schema:
          type: string
      - name: $top
        in: query
        description: Returns only the first n results.
        required: false
        schema:
          type: integer
          format: int32
      - name: $skip
        in: query
        description: Skips the first n results.
        required: false
        schema:
          type: integer
          format: int32
      - name: $count
        in: query
        description: Includes a count of the matching results in the response.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    post:
      tags:
      - Salespersons
      summary: Post a new entity to EntitySet Salespersons
      operationId: Salespersons_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Insite.Data.Entities.Salesperson'
        description: The entity to post
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
  /api/v1/admin/Salespersons({id}):
    get:
      tags:
      - Salespersons
      summary: Returns the entity with the key from Salespersons
      operationId: Salespersons_GetById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    put:
      tags:
      - Salespersons
      summary: Replace entity in EntitySet Salespersons
      operationId: Salespersons_PutById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Insite.Data.Entities.Salesperson'
        description: The entity to put
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    delete:
      tags:
      - Salespersons
      summary: Delete entity in EntitySet Salespersons
      operationId: Salespersons_DeleteById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      - name: If-Match
        in: header
        description: If-Match header
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    patch:
      tags:
      - Salespersons
      summary: Update entity in EntitySet Salespersons
      operationId: Salespersons_PatchById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Insite.Data.Entities.Salesperson'
        description: The entity to patch
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
  /api/v1/admin/Salespersons/Default.Default():
    get:
      tags:
      - Salespersons
      summary: Call operation Default
      operationId: Salespersons_Default
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
  /api/v1/admin/salespersons/delete:
    delete:
      tags:
      - Salespersons
      operationId: Salespersons_DeleteRoute
      parameters:
      - name: ids
        in: query
        required: true
        explode: true
        schema:
          type: array
          items:
            type: string
            format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Salespersons delete route
      x-summary-source: derived
  /api/v1/admin/salespersons({key})/customerorders({customerorderKey}):
    get:
      tags:
      - Salespersons
      operationId: Salespersons_GetCustomerOrderByKeyAndCustomerorderkey
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: customerorderKey
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Salespersons get customer order by key and customerorderkey
      x-summary-source: derived
  /api/v1/admin/salespersons({key})/customers({customerKey}):
    get:
      tags:
      - Salespersons
      operationId: Salespersons_GetCustomerByKeyAndCustomerkey
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: customerKey
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Salespersons get customer by key and customerkey
      x-summary-source: derived
  /api/v1/admin/salespersons({key})/customproperties({custompropertyKey}):
    get:
      tags:
      - Salespersons
      operationId: Salespersons_GetCustomPropertyByKeyAndCustompropertykey
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: custompropertyKey
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Salespersons get custom property by key and custompropertykey
      x-summary-source: derived
components:
  schemas:
    Insite.Data.Entities.Salesperson:
      required:
      - salespersonNumber
      - name
      - salesClass
      - code
      - referenceNumber
      - email
      - phone1
      - phone2
      - title
      - imagePath
      - description
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        salespersonNumber:
          maxLength: 50
          minLength: 0
          type: string
        name:
          maxLength: 100
          minLength: 0
          type: string
        salesClass:
          maxLength: 50
          minLength: 0
          type: string
        code:
          maxLength: 50
          minLength: 0
          type: string
        referenceNumber:
          maxLength: 50
          minLength: 0
          type: string
        isOutsideRep:
          type: boolean
        salesPeriodToDate:
          format: decimal
          type: number
        salesYearToDate:
          format: decimal
          type: number
        email:
          maxLength: 128
          minLength: 0
          type: string
        phone1:
          maxLength: 50
          minLength: 0
          type: string
        phone2:
          maxLength: 50
          minLength: 0
          type: string
        title:
          maxLength: 100
          minLength: 0
          type: string
        userProfileId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        imagePath:
          maxLength: 1024
          minLength: 0
          type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        minMarginAllowed:
          format: decimal
          type: number
        maxDiscountPercent:
          format: decimal
          type: number
        salesManagerId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        createdOn:
          format: date-time
          type: string
        createdBy:
          type: string
        modifiedOn:
          format: date-time
          type: string
        modifiedBy:
          type: string
  securitySchemes:
    access_token:
      type: apiKey
      description: Token used to access storefront API.
      name: access_token
      in: query