> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abundly.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Replace agents' value entries

> Replace the agents' value entries — what each agent is worth, per workspace value category. Send the complete list; it replaces what is stored. Category ids must exist in the workspace value-capture settings (see /workspaceapi/overview). Batch write: each id gets its own result and per-id failures still return HTTP 200 — check `results[].success` and `summary`.



## OpenAPI

````yaml /api-reference/workspace-api.json post /workspaceapi/agents/value-entries
openapi: 3.1.0
info:
  title: Abundly Workspace API
  description: >-
    Workspace-level and per-agent data and administration. GET endpoints need a
    workspace API key (wk_) with the Workspace read API scope; POST endpoints
    need the Workspace write API scope. The write endpoints are batch operations
    mirroring the Workspace Manager capability: ids travel in the JSON body,
    each id gets its own result, and per-id failures still return HTTP 200.


    Private agents are listed by /workspaceapi/agents but return 403 on every
    per-agent GET, so enumerate from /workspaceapi/agents?includeOverview=true
    rather than iterating agent ids. Write endpoints can target private agents.
  version: 1.0.0
servers:
  - url: https://service.abundly.ai
    description: Shared platform
  - url: https://{tenant}.service.abundly.ai
    description: Dedicated deployment
    variables:
      tenant:
        default: your-tenant
security:
  - workspaceApiKey: []
paths:
  /workspaceapi/agents/value-entries:
    post:
      summary: Replace agents' value entries
      description: >-
        Replace the agents' value entries — what each agent is worth, per
        workspace value category. Send the complete list; it replaces what is
        stored. Category ids must exist in the workspace value-capture settings
        (see /workspaceapi/overview). Batch write: each id gets its own result
        and per-id failures still return HTTP 200 — check `results[].success`
        and `summary`.
      operationId: post-agents-value-entries
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                ids:
                  description: Agent IDs to update.
                  minItems: 1
                  type: array
                  items:
                    type: string
                valueEntries:
                  description: >-
                    The full list to store on each agent; pass an empty array to
                    clear.
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        description: >-
                          ID of an existing entry to update. Omit to add a new
                          entry.
                        type: string
                      categoryId:
                        description: >-
                          Value category ID, from the workspace value-capture
                          settings.
                        type: string
                      description:
                        description: >-
                          The expected value, quantified — e.g. 'Saves ~4 hours
                          of manual reporting/week'.
                        type: string
                      actualMode:
                        description: How realized value is captured. Defaults to manual.
                        type: string
                        enum:
                          - manual
                          - per_interaction
                      actual:
                        description: >-
                          Realized value as free text. Only valid when
                          actualMode is manual.
                        type: string
                      perInteraction:
                        description: >-
                          Rate used to compute realized value. Only valid when
                          actualMode is per_interaction.
                        type: object
                        properties:
                          amount:
                            description: Value per interaction.
                            type: number
                          unit:
                            description: Currency or unit label.
                            type: string
                          interactionScope:
                            description: '''all'', or a single usage channel to count.'
                            type: string
                        required:
                          - amount
                          - interactionScope
                    required:
                      - categoryId
                      - description
              required:
                - ids
                - valueEntries
      responses:
        '200':
          description: Success. Empty result sets are also 200.
          content:
            application/json:
              schema:
                description: >-
                  Batch outcome. The request is 200 as long as it was
                  well-formed; check per-id `success` for failures.
                type: object
                properties:
                  results:
                    type: array
                    items:
                      description: Outcome for one id in the batch.
                      type: object
                      properties:
                        id:
                          description: The target entity id from the request.
                          type: string
                        name:
                          description: The target's name, when it could be resolved.
                          type: string
                        success:
                          type: boolean
                        unchanged:
                          description: >-
                            True when the write would not have changed anything
                            (or dryRun).
                          type: boolean
                        applied:
                          description: The stored values after the write.
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties: {}
                        tags:
                          description: 'Tag endpoints: the final tag list.'
                          type: array
                          items:
                            type: string
                        impact:
                          description: >-
                            Team moves: who gains/loses access and which
                            capabilities flip.
                        error:
                          description: >-
                            Why this id failed. Per-id failures still return
                            HTTP 200.
                          type: string
                      required:
                        - id
                        - success
                      additionalProperties: {}
                  summary:
                    type: object
                    properties:
                      total:
                        type: number
                      succeeded:
                        type: number
                      failed:
                        type: number
                      unchanged:
                        type: number
                    required:
                      - total
                      - succeeded
                      - failed
                      - unchanged
                    additionalProperties: false
                required:
                  - results
                  - summary
                additionalProperties: false
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/Error'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
components:
  responses:
    Error:
      description: >-
        Error. Every failure on this API returns JSON with a single `error`
        field.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                description: >-
                  Human-readable message. Every error on this API uses this
                  shape.
                type: string
            required:
              - error
            additionalProperties: false
  securitySchemes:
    workspaceApiKey:
      type: http
      scheme: bearer
      description: >-
        Workspace API key (wk_). GET endpoints require the Workspace read API
        scope, POST endpoints the Workspace write API scope.

````