naftiko: 1.0.0-alpha2 info: label: godaddy-shoppers — v1 description: 'godaddy-shoppers — v1. 6 operations. Lead operation: Create a Subaccount owned by the authenticated Reseller. Self-contained Naftiko capability covering one Godaddy business surface.' tags: - Godaddy - v1 created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GODADDY_API_KEY: GODADDY_API_KEY capability: consumes: - type: http namespace: shoppers-v1 baseUri: https://api.ote-godaddy.com description: godaddy-shoppers — v1 business capability. Self-contained, no shared references. resources: - name: v1-shoppers-subaccount path: /v1/shoppers/subaccount operations: - name: createsubaccount method: POST description: Create a Subaccount owned by the authenticated Reseller outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: subaccount in: body type: string description: The subaccount to create required: true - name: v1-shoppers-shopperId path: /v1/shoppers/{shopperId} operations: - name: get method: GET description: Get details for the specified Shopper outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: shopperId in: path type: string description: Shopper whose details are to be retrieved required: true - name: includes in: query type: array description: Additional properties to be included in the response shopper object - name: update method: POST description: Update details for the specified Shopper outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: shopperId in: path type: string description: The ID of the Shopper to update required: true - name: shopper in: body type: string description: The Shopper details to update required: true - name: delete method: DELETE description: Request the deletion of a shopper profile outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: shopperId in: path type: string description: 'The ID of the shopper to delete. Must agree with the shopper id on the token or header, if present. *Note*: **shopperId** is **not the same** as **customerId**.' required: true - name: auditClientIp in: query type: string description: The client IP of the user who originated the request leading to this call. required: true - name: v1-shoppers-shopperId-factors-password path: /v1/shoppers/{shopperId}/factors/password operations: - name: changepassword method: PUT description: Set subaccount's password outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: shopperId in: path type: string description: Shopper whose password will be set required: true - name: secret in: body type: string description: The value to set the subaccount's password to required: true - name: v1-shoppers-shopperId-status path: /v1/shoppers/{shopperId}/status operations: - name: getstatus method: GET description: Get details for the specified Shopper outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: shopperId in: path type: string description: The ID of the shopper to retrieve. Must agree with the shopper id on the token or header, if present required: true - name: auditClientIp in: query type: string description: The client IP of the user who originated the request leading to this call. required: true exposes: - type: rest namespace: shoppers-v1-rest port: 8080 description: REST adapter for godaddy-shoppers — v1. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/shoppers/subaccount name: v1-shoppers-subaccount description: REST surface for v1-shoppers-subaccount. operations: - method: POST name: createsubaccount description: Create a Subaccount owned by the authenticated Reseller call: shoppers-v1.createsubaccount with: subaccount: rest.subaccount outputParameters: - type: object mapping: $. - path: /v1/v1/shoppers/{shopperid} name: v1-shoppers-shopperid description: REST surface for v1-shoppers-shopperId. operations: - method: GET name: get description: Get details for the specified Shopper call: shoppers-v1.get with: shopperId: rest.shopperId includes: rest.includes outputParameters: - type: object mapping: $. - method: POST name: update description: Update details for the specified Shopper call: shoppers-v1.update with: shopperId: rest.shopperId shopper: rest.shopper outputParameters: - type: object mapping: $. - method: DELETE name: delete description: Request the deletion of a shopper profile call: shoppers-v1.delete with: shopperId: rest.shopperId auditClientIp: rest.auditClientIp outputParameters: - type: object mapping: $. - path: /v1/v1/shoppers/{shopperid}/factors/password name: v1-shoppers-shopperid-factors-password description: REST surface for v1-shoppers-shopperId-factors-password. operations: - method: PUT name: changepassword description: Set subaccount's password call: shoppers-v1.changepassword with: shopperId: rest.shopperId secret: rest.secret outputParameters: - type: object mapping: $. - path: /v1/v1/shoppers/{shopperid}/status name: v1-shoppers-shopperid-status description: REST surface for v1-shoppers-shopperId-status. operations: - method: GET name: getstatus description: Get details for the specified Shopper call: shoppers-v1.getstatus with: shopperId: rest.shopperId auditClientIp: rest.auditClientIp outputParameters: - type: object mapping: $. - type: mcp namespace: shoppers-v1-mcp port: 9090 transport: http description: MCP adapter for godaddy-shoppers — v1. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: create-subaccount-owned-authenticated-reseller description: Create a Subaccount owned by the authenticated Reseller hints: readOnly: false destructive: false idempotent: false call: shoppers-v1.createsubaccount with: subaccount: tools.subaccount outputParameters: - type: object mapping: $. - name: get-details-specified-shopper description: Get details for the specified Shopper hints: readOnly: true destructive: false idempotent: true call: shoppers-v1.get with: shopperId: tools.shopperId includes: tools.includes outputParameters: - type: object mapping: $. - name: update-details-specified-shopper description: Update details for the specified Shopper hints: readOnly: false destructive: false idempotent: false call: shoppers-v1.update with: shopperId: tools.shopperId shopper: tools.shopper outputParameters: - type: object mapping: $. - name: request-deletion-shopper-profile description: Request the deletion of a shopper profile hints: readOnly: false destructive: true idempotent: true call: shoppers-v1.delete with: shopperId: tools.shopperId auditClientIp: tools.auditClientIp outputParameters: - type: object mapping: $. - name: set-subaccount-s-password description: Set subaccount's password hints: readOnly: false destructive: false idempotent: true call: shoppers-v1.changepassword with: shopperId: tools.shopperId secret: tools.secret outputParameters: - type: object mapping: $. - name: get-details-specified-shopper-2 description: Get details for the specified Shopper hints: readOnly: true destructive: false idempotent: true call: shoppers-v1.getstatus with: shopperId: tools.shopperId auditClientIp: tools.auditClientIp outputParameters: - type: object mapping: $.