From e4a968d07a39c6711f46c074ada219c7aa63b4ca Mon Sep 17 00:00:00 2001 From: SirDomin Date: Thu, 12 Aug 2021 13:51:48 +0200 Subject: [PATCH 1/2] [Docs] add registration/login examples --- .../getting-started-with-sylius/using-api.rst | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 docs/getting-started-with-sylius/using-api.rst diff --git a/docs/getting-started-with-sylius/using-api.rst b/docs/getting-started-with-sylius/using-api.rst new file mode 100644 index 00000000000..8403a465e76 --- /dev/null +++ b/docs/getting-started-with-sylius/using-api.rst @@ -0,0 +1,64 @@ +Using API +========= + +Since sylius 1.8 we allow you to use our API. +Sylius API is based on ApiPlatform. +Here are some examples of basic usage for a shop implementation. + +Registration +------------ + +To register a customer all we need to do is single post request: + +.. code-block:: bash + + curl -X 'POST' \ + 'https://master.demo.sylius.com/api/v2/shop/customers' \ + -H 'accept: */*' \ + -H 'Content-Type: application/ld+json' \ + -d '{ + "firstName": "shop", + "lastName": "user", + "email": "shop.user@example.com", + "password": "pa$$word", + "subscribedToNewsletter": true + }' + +If we get response code `204`, it means our customer is registered successfully. + + +Login +----- + +Once shop customer is registered, we can now create a login request to get authentication token, which will allow us to use more shop endpoints. +To get token, lets create a simple login request: + +.. code-block:: bash + + curl -X 'POST' \ + 'https://master.demo.sylius.com/api/v2/shop/authentication-token' \ + -H 'accept: application/json' \ + -H 'Content-Type: application/json' \ + -d '{ + "email": "shop.user@example.com", + "password": "pa$$word" + }' + +As a response we should get code `200`, along with `token` and `customer` iri. + +.. code-block:: json + + { + "token": "string", + "customer": "iri" + } + +With token we can add it to header requests and authenticate ourselves to use full potential of sylius API. + +.. code-block:: bash + + curl -X 'METHOD' \ + 'api-url' \ + -H 'accept: application/ld+json' \ + -H 'Authorization: Bearer string + From 8e70b928e9a7b2eae3f0057ff7bebfd855171283 Mon Sep 17 00:00:00 2001 From: arti0090 Date: Tue, 17 Aug 2021 14:23:48 +0200 Subject: [PATCH 2/2] Document full checkout process --- .../api_platform_post_shop_token.png | Bin 0 -> 60087 bytes .../api_platform_shop_customer_post.png | Bin 0 -> 29209 bytes .../api_platform_shop_orders_addressing.png | Bin 0 -> 34084 bytes ...atform_shop_orders_addressing_response.png | Bin 0 -> 39505 bytes ...i_platform_shop_orders_change_quantity.png | Bin 0 -> 28084 bytes ...m_shop_orders_change_quantity_response.png | Bin 0 -> 37505 bytes ...i_platform_shop_orders_choose_shipping.png | Bin 0 -> 55303 bytes .../api_platform_shop_orders_completed.png | Bin 0 -> 35842 bytes .../api_platform_shop_orders_items_patch.png | Bin 0 -> 24828 bytes .../api_platform_shop_orders_post.png | Bin 0 -> 55757 bytes docs/getting-started-with-sylius/index.rst | 1 + docs/getting-started-with-sylius/map.rst.inc | 1 + .../getting-started-with-sylius/using-api.rst | 312 +++++++++++++++++- 13 files changed, 302 insertions(+), 12 deletions(-) create mode 100644 docs/_images/sylius_api/api_platform_post_shop_token.png create mode 100644 docs/_images/sylius_api/api_platform_shop_customer_post.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_addressing.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_addressing_response.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_change_quantity.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_change_quantity_response.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_choose_shipping.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_completed.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_items_patch.png create mode 100644 docs/_images/sylius_api/api_platform_shop_orders_post.png diff --git a/docs/_images/sylius_api/api_platform_post_shop_token.png b/docs/_images/sylius_api/api_platform_post_shop_token.png new file mode 100644 index 0000000000000000000000000000000000000000..89d04a7cff5fd02d0452fd2d406c1876411b4fee GIT binary patch literal 60087 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