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

# Update Managed Account

> Update existing retailer credentials

Update an existing managed account's retailer credentials. Only provided fields are updated.

## Path Parameters

* **short\_id** (required) - The short identifier of the credentials to update (e.g., `zn_acct_a1b2c3d4`)

## Request Fields

All fields are optional. Only provided fields are updated.

* **email** - New email address
* **password** - New password (encrypted at rest)
* **retailer** - New retailer association
* **totp\_secret** - Update the 2FA secret key (encrypted at rest)

## Response

Returns the updated credential object.


## OpenAPI

````yaml /versions/latest.json PUT /managed-accounts/{short_id}
openapi: 3.1.0
info:
  title: Zinc
  summary: >-
    Zinc lets you search, buy, and return items from top online retailers with a
    single API.
  description: >-
    Search, buy, and return items from top online retailers with a single API.
    Supports AI agent ordering via MPP (HTTP 402) — no account required.
  version: '2026-04-27'
  x-logo:
    url: https://mintlify.s3.us-west-1.amazonaws.com/zinc/logo/light.png
  x-guidance: >-
    Zinc lets AI agents buy products from online retailers via a single API. Use
    POST /agent/orders to place an order — no Zinc account needed, payment is
    handled via MPP (HTTP 402 flow). Provide a product URL (e.g. Amazon),
    shipping address, and max_price in cents. The API charges max_price + $1 API
    fee upfront and refunds the difference on completion. Authenticated
    endpoints (orders, products, managed-accounts) require a Bearer token (API
    key prefixed zn_). Docs: https://zinc.com/docs
servers:
  - url: https://api.zinc.com
    description: Production
security:
  - BearerAuth: []
paths:
  /managed-accounts/{short_id}:
    put:
      tags:
        - managed-accounts
      summary: Update Retailer Credentials
      description: |-
        Update retailer credentials for the current user.
        Admins can also update global credentials.
      operationId: update_retailer_credentials_managed_accounts__short_id__put
      parameters:
        - name: short_id
          in: path
          required: true
          schema:
            type: string
            title: Short Id
        - name: authorization
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Authorization
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RetailerCredentialsUpdate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetailerCredentialsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    RetailerCredentialsUpdate:
      properties:
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
        password:
          anyOf:
            - type: string
            - type: 'null'
          title: Password
        retailer:
          anyOf:
            - type: string
            - type: 'null'
          title: Retailer
        totp_secret:
          anyOf:
            - type: string
            - type: 'null'
          title: Totp Secret
        retailer_config:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Retailer Config
      type: object
      title: RetailerCredentialsUpdate
      description: Request model for updating retailer credentials.
    RetailerCredentialsResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        short_id:
          type: string
          title: Short Id
        email:
          type: string
          title: Email
        retailer:
          anyOf:
            - type: string
            - type: 'null'
          title: Retailer
        has_totp:
          type: boolean
          title: Has Totp
          description: Whether TOTP 2FA is configured for this account.
          default: false
        has_forwarding:
          type: boolean
          title: Has Forwarding
          description: Whether email forwarding has been verified for this account.
          default: false
        is_paused:
          type: boolean
          title: Is Paused
          description: Whether this credential is paused (jobs will not be picked up).
          default: false
        locked_by_job_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Locked By Job Id
          description: The job ID currently using this credential, if any.
        cooldown_minutes:
          anyOf:
            - type: integer
            - type: 'null'
          title: Cooldown Minutes
          description: Minimum minutes between uses. None = no cooldown.
        last_used_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Last Used At
          description: When this credential was last released after a job completed.
        retailer_config:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Retailer Config
        forwarding_email:
          type: string
          title: Forwarding Email
          description: >-
            Email address to forward retailer emails to for verification and 2FA
            code extraction.
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - short_id
        - email
        - retailer
        - forwarding_email
        - created_at
        - updated_at
      title: RetailerCredentialsResponse
      description: Response model for retailer credentials.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    BearerAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Zinc API key (Bearer zn_...)

````