SAP Commerce Cloud Users API

User account management

OpenAPI Specification

sap-commerce-cloud-users-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: SAP Commerce Cloud Admin Addresses Users API
  description: Administrative API for SAP Commerce Cloud providing system configuration, maintenance, monitoring, and health check capabilities. Enables programmatic access to system administration functions including cache management, CronJob execution, and system health monitoring.
  version: '1.0'
  contact:
    name: SAP Support
    url: https://support.sap.com/
  termsOfService: https://www.sap.com/about/legal/terms-of-use.html
servers:
- url: https://{tenant}.{region}.commercecloud.sap
  description: SAP Commerce Cloud Production
  variables:
    tenant:
      description: Tenant identifier
      default: my-tenant
    region:
      description: Deployment region
      default: us
security:
- oauth2: []
tags:
- name: Users
  description: User account management
paths:
  /users/{userId}:
    get:
      operationId: getUser
      summary: SAP Commerce Cloud Get user profile
      description: Retrieve the profile of a specific user. Use 'current' as userId for the currently authenticated user, or 'anonymous' for guest users.
      tags:
      - Users
      parameters:
      - $ref: '#/components/parameters/userId'
      - $ref: '#/components/parameters/fields'
      responses:
        '200':
          description: User profile
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
        '404':
          description: User not found
    put:
      operationId: updateUser
      summary: SAP Commerce Cloud Update user profile
      description: Update the profile of a specific user.
      tags:
      - Users
      parameters:
      - $ref: '#/components/parameters/userId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      responses:
        '200':
          description: User updated
        '400':
          description: Invalid user data
    delete:
      operationId: deleteUser
      summary: SAP Commerce Cloud Delete user account
      description: Delete or deactivate a user account.
      tags:
      - Users
      parameters:
      - $ref: '#/components/parameters/userId'
      responses:
        '200':
          description: User deleted
        '401':
          description: Unauthorized
  /users:
    post:
      operationId: registerUser
      summary: SAP Commerce Cloud Register a new user
      description: Register a new customer account.
      tags:
      - Users
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserRegistration'
      responses:
        '201':
          description: User registered
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
        '400':
          description: Invalid registration data
  /users/{userId}/paymentdetails:
    get:
      operationId: getUserPaymentDetails
      summary: SAP Commerce Cloud List user payment details
      description: Retrieve all saved payment details for a user.
      tags:
      - Users
      parameters:
      - $ref: '#/components/parameters/userId'
      - $ref: '#/components/parameters/fields'
      responses:
        '200':
          description: Payment details list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentDetailsList'
components:
  schemas:
    User:
      type: object
      properties:
        uid:
          type: string
          description: User unique identifier (email)
        name:
          type: string
          description: Full name
        firstName:
          type: string
          description: First name
        lastName:
          type: string
          description: Last name
        titleCode:
          type: string
          description: Title code (mr, mrs, ms, etc.)
        currency:
          $ref: '#/components/schemas/Currency'
        language:
          $ref: '#/components/schemas/Language'
        defaultAddress:
          $ref: '#/components/schemas/Address'
        displayUid:
          type: string
          description: Display UID
    PaymentDetails:
      type: object
      properties:
        id:
          type: string
          description: Payment details identifier
        accountHolderName:
          type: string
          description: Card holder name
        cardNumber:
          type: string
          description: Masked card number
        cardType:
          type: object
          properties:
            code:
              type: string
              description: Card type code
            name:
              type: string
              description: Card type name
        expiryMonth:
          type: string
          description: Card expiry month
        expiryYear:
          type: string
          description: Card expiry year
        billingAddress:
          $ref: '#/components/schemas/Address'
        defaultPayment:
          type: boolean
          description: Whether this is the default payment method
        saved:
          type: boolean
          description: Whether the payment details are saved
    Country:
      type: object
      properties:
        isocode:
          type: string
          description: ISO 3166-1 alpha-2 country code
        name:
          type: string
          description: Country name
    Address:
      type: object
      properties:
        id:
          type: string
          description: Address identifier
        firstName:
          type: string
          description: First name
        lastName:
          type: string
          description: Last name
        titleCode:
          type: string
          description: Title code
        line1:
          type: string
          description: Address line 1
        line2:
          type: string
          description: Address line 2
        town:
          type: string
          description: City or town
        region:
          $ref: '#/components/schemas/Region'
        district:
          type: string
          description: District
        postalCode:
          type: string
          description: Postal or ZIP code
        country:
          $ref: '#/components/schemas/Country'
        phone:
          type: string
          description: Phone number
        email:
          type: string
          description: Email address
        defaultAddress:
          type: boolean
          description: Whether this is the default address
    UserRegistration:
      type: object
      required:
      - uid
      - firstName
      - lastName
      - password
      properties:
        uid:
          type: string
          description: Email address as user ID
        firstName:
          type: string
          description: First name
        lastName:
          type: string
          description: Last name
        password:
          type: string
          format: password
          description: Account password
        titleCode:
          type: string
          description: Title code
    Language:
      type: object
      properties:
        isocode:
          type: string
          description: ISO 639-1 language code
        name:
          type: string
          description: Language name
    Region:
      type: object
      properties:
        isocode:
          type: string
          description: Region ISO code
        name:
          type: string
          description: Region name
    Currency:
      type: object
      properties:
        isocode:
          type: string
          description: ISO 4217 currency code
        name:
          type: string
          description: Currency name
        symbol:
          type: string
          description: Currency symbol
    PaymentDetailsList:
      type: object
      properties:
        payments:
          type: array
          items:
            $ref: '#/components/schemas/PaymentDetails'
  parameters:
    fields:
      name: fields
      in: query
      description: Response field configuration level. Use BASIC, DEFAULT, or FULL to control the amount of data returned.
      schema:
        type: string
        enum:
        - BASIC
        - DEFAULT
        - FULL
        default: DEFAULT
    userId:
      name: userId
      in: path
      required: true
      description: User identifier. Use 'current' for the authenticated user or 'anonymous' for guest users.
      schema:
        type: string
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 authentication for SAP Commerce Cloud Admin API
      flows:
        clientCredentials:
          tokenUrl: https://{tenant}.{region}.commercecloud.sap/authorizationserver/oauth/token
          scopes:
            admin: Administrative access
externalDocs:
  description: SAP Commerce Cloud Administration Documentation
  url: https://help.sap.com/docs/SAP_COMMERCE_CLOUD_PUBLIC_CLOUD/