<?xml version="1.0"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<routes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Webapi:etc/webapi.xsd">
<!-- Customer Group -->
<route url="/V1/customerGroups/:id" method="GET">
<service class="Magento\Customer\Api\GroupRepositoryInterface" method="getById"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups/default/:storeId" method="GET">
<service class="Magento\Customer\Api\GroupManagementInterface" method="getDefaultGroup"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups/default" method="GET">
<service class="Magento\Customer\Api\GroupManagementInterface" method="getDefaultGroup"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups/default/:id" method="PUT">
<service class="Magento\Customer\Api\CustomerGroupConfigInterface" method="setDefaultCustomerGroup"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups/:id/permissions" method="GET">
<service class="Magento\Customer\Api\GroupManagementInterface" method="isReadonly"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups/search" method="GET">
<service class="Magento\Customer\Api\GroupRepositoryInterface" method="getList"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups" method="POST">
<service class="Magento\Customer\Api\GroupRepositoryInterface" method="save"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups/:id" method="PUT">
<service class="Magento\Customer\Api\GroupRepositoryInterface" method="save"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<route url="/V1/customerGroups/:id" method="DELETE">
<service class="Magento\Customer\Api\GroupRepositoryInterface" method="deleteById"/>
<resources>
<resource ref="Magento_Customer::group"/>
</resources>
</route>
<!-- Customer Metadata -->
<route url="/V1/attributeMetadata/customer/attribute/:attributeCode" method="GET">
<service class="Magento\Customer\Api\CustomerMetadataInterface" method="getAttributeMetadata"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/attributeMetadata/customer/form/:formCode" method="GET">
<service class="Magento\Customer\Api\CustomerMetadataInterface" method="getAttributes"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/attributeMetadata/customer" method="GET">
<service class="Magento\Customer\Api\CustomerMetadataInterface" method="getAllAttributesMetadata"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/attributeMetadata/customer/custom" method="GET">
<service class="Magento\Customer\Api\CustomerMetadataInterface" method="getCustomAttributesMetadata"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<!-- Customer Address Metadata -->
<route url="/V1/attributeMetadata/customerAddress/attribute/:attributeCode" method="GET">
<service class="Magento\Customer\Api\AddressMetadataInterface" method="getAttributeMetadata"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/attributeMetadata/customerAddress/form/:formCode" method="GET">
<service class="Magento\Customer\Api\AddressMetadataInterface" method="getAttributes"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/attributeMetadata/customerAddress" method="GET">
<service class="Magento\Customer\Api\AddressMetadataInterface" method="getAllAttributesMetadata"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/attributeMetadata/customerAddress/custom" method="GET">
<service class="Magento\Customer\Api\AddressMetadataInterface" method="getCustomAttributesMetadata"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<!-- Customer Account -->
<route url="/V1/customers/:customerId" method="GET">
<service class="Magento\Customer\Api\CustomerRepositoryInterface" method="getById"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/customers" method="POST">
<service class="Magento\Customer\Api\AccountManagementInterface" method="createAccount"/>
<resources>
<resource ref="anonymous"/>
</resources>
</route>
<route url="/V1/customers/:customerId" method="PUT">
<service class="Magento\Customer\Api\CustomerRepositoryInterface" method="save"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/customers/me" method="PUT" soapOperation="saveSelf">
<service class="Magento\Customer\Api\CustomerRepositoryInterface" method="save"/>
<resources>
<resource ref="self"/>
</resources>
<data>
<parameter name="customer.id" force="true">%customer_id%</parameter>
<parameter name="customer.group_id" force="true">%customer_group_id%</parameter>
<parameter name="customer.website_id" force="true">%customer_website_id%</parameter>
<parameter name="customer.store_id" force="true">%customer_store_id%</parameter>
</data>
</route>
<route url="/V1/customers/me" method="GET" soapOperation="getSelf">
<service class="Magento\Customer\Api\CustomerRepositoryInterface" method="getById"/>
<resources>
<resource ref="self"/>
</resources>
<data>
<parameter name="customerId" force="true">%customer_id%</parameter>
</data>
</route>
<route url="/V1/customers/me/activate" method="PUT">
<service class="Magento\Customer\Api\AccountManagementInterface" method="activateById"/>
<resources>
<resource ref="self"/>
</resources>
<data>
<parameter name="customerId" force="true">%customer_id%</parameter>
</data>
</route>
<route url="/V1/customers/search" method="GET">
<service class="Magento\Customer\Api\CustomerRepositoryInterface" method="getList"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/customers/:email/activate" method="PUT">
<service class="Magento\Customer\Api\AccountManagementInterface" method="activate"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/customers/me/password" method="PUT">
<service class="Magento\Customer\Api\AccountManagementInterface" method="changePasswordById"/>
<resources>
<resource ref="self"/>
</resources>
<data>
<parameter name="customerId" force="true">%customer_id%</parameter>
</data>
</route>
<route url="/V1/customers/:customerId/password/resetLinkToken/:resetPasswordLinkToken" method="GET">
<service class="Magento\Customer\Api\AccountManagementInterface" method="validateResetPasswordLinkToken"/>
<resources>
<resource ref="anonymous"/>
</resources>
</route>
<route url="/V1/customers/password" method="PUT">
<service class="Magento\Customer\Api\AccountManagementInterface" method="initiatePasswordReset"/>
<resources>
<resource ref="anonymous"/>
</resources>
</route>
<route url="/V1/customers/resetPassword" method="POST">
<service class="Magento\Customer\Api\AccountManagementInterface" method="resetPassword"/>
<resources>
<resource ref="anonymous"/>
</resources>
</route>
<route url="/V1/customers/:customerId/confirm" method="GET">
<service class="Magento\Customer\Api\AccountManagementInterface" method="getConfirmationStatus"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/customers/confirm" method="POST">
<service class="Magento\Customer\Api\AccountManagementInterface" method="resendConfirmation"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/customers/validate" method="PUT">
<service class="Magento\Customer\Api\AccountManagementInterface" method="validate"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/customers/:customerId/permissions/readonly" method="GET">
<service class="Magento\Customer\Api\AccountManagementInterface" method="isReadonly"/>
<resources>
<resource ref="Magento_Customer::customer"/>
</resources>
</route>
<route url="/V1/customers/:customerId" method="DELETE">
<service class="Magento\Customer\Api\CustomerRepositoryInterface" method="deleteById"/>
<resources>
<resource ref="Magento_Customer::delete"/>
</resources>
</route>
<route url="/V1/customers/isEmailAvailable" method="POST">
<service class="Magento\Customer\Api\AccountManagementInterface" method="isEmailAvailable"/>
<resources>
<resource ref="anonymous"/>
</resources>
</route>
<!-- Customer Addresses -->
<route url="/V1/customers/addresses/:addressId" method="GET">
<service class="Magento\Customer\Api\AddressRepositoryInterface" method="getById"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/customers/me/billingAddress" method="GET" soapOperation="getMyDefaultBillingAddress">
<service class="Magento\Customer\Api\AccountManagementInterface" method="getDefaultBillingAddress"/>
<resources>
<resource ref="self"/>
</resources>
<data>
<parameter name="customerId" force="true">%customer_id%</parameter>
</data>
</route>
<route url="/V1/customers/:customerId/billingAddress" method="GET">
<service class="Magento\Customer\Api\AccountManagementInterface" method="getDefaultBillingAddress"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/customers/me/shippingAddress" method="GET" soapOperation="getMyDefaultShippingAddress">
<service class="Magento\Customer\Api\AccountManagementInterface" method="getDefaultShippingAddress"/>
<resources>
<resource ref="self"/>
</resources>
<data>
<parameter name="customerId" force="true">%customer_id%</parameter>
</data>
</route>
<route url="/V1/customers/:customerId/shippingAddress" method="GET">
<service class="Magento\Customer\Api\AccountManagementInterface" method="getDefaultShippingAddress"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
<route url="/V1/addresses/:addressId" method="DELETE">
<service class="Magento\Customer\Api\AddressRepositoryInterface" method="deleteById"/>
<resources>
<resource ref="Magento_Customer::manage"/>
</resources>
</route>
</routes>
|