MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with Courses Plus API.

Authenticating requests

To authenticate requests, include a X-Api-Access-Token header with the value "{YOUR_ACCESS_TOKEN}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting your dashboard and clicking Generate API token.

Attendees

Endpoints to work with studen access to courses

Endpoints to get information about shop

requires authentication

Allows to provide access to stated course (or membership) for stated shopify customer

Example request:
curl --request POST \
    "https://courses-plus-api.architechpro.cc/api/v1/attendees/sint?shop=example-shop.myshopify.com&product_id=12345678" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"gdmcdbbidtrgtcgmsyvlrws\",
    \"product_id\": 11
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/attendees/sint"
);

const params = {
    "shop": "example-shop.myshopify.com",
    "product_id": "12345678",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "gdmcdbbidtrgtcgmsyvlrws",
    "product_id": 11
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "provided": true
}
 

Request   

POST api/v1/attendees/{customerId}

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

URL Parameters

customerId   string   

Example: sint

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

product_id   string   

Shopify product id Example: 12345678

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: gdmcdbbidtrgtcgmsyvlrws

product_id   integer   

Example: 11

Allows to revoke access from stated course (or membership) for stated shopify customer

requires authentication

Example request:
curl --request DELETE \
    "https://courses-plus-api.architechpro.cc/api/v1/attendees/iure?shop=example-shop.myshopify.com&product_id=12345678" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"hawk\",
    \"product_id\": 17
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/attendees/iure"
);

const params = {
    "shop": "example-shop.myshopify.com",
    "product_id": "12345678",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "hawk",
    "product_id": 17
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "revoked": true
}
 

Request   

DELETE api/v1/attendees/{customerId}

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

URL Parameters

customerId   string   

Example: iure

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

product_id   string   

Shopify product id Example: 12345678

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: hawk

product_id   integer   

Example: 17

Courses

Student courses

The student courses resource allows you to to retrieve information about all available courses for student. This includes:

Student courses

requires authentication

Display a list of all available courses for student.

Example request:
curl --request GET \
    --get "https://courses-plus-api.architechpro.cc/api/v1/student-courses?shop=example-shop.myshopify.com&student_id=1&liquid_product_ids=12345678%2C+21345678%2C+32145678&tags=access_tag%2C+my+tag%2C+Multiple+words+tag&client_id=1" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/student-courses"
);

const params = {
    "shop": "example-shop.myshopify.com",
    "student_id": "1",
    "liquid_product_ids": "12345678, 21345678, 32145678",
    "tags": "access_tag, my tag, Multiple words tag",
    "client_id": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
 "courses": [
     {
"id": 123456789,
"type": "regular",
"title": "Paid course",
"handle": "paid-course",
"description": "This is paid course",
"image": "https://cdn.shopify.com/s/files/1/0504/5829/6488/products/no_image.png"
"completionMinutes": 15
"completionHours": 20,
"tags": ['first', 'second', 'third', 'vip']
}
 ]
}
 

Request   

GET api/v1/student-courses

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

student_id   integer   

Id of the student to get the course info Example: 1

liquid_product_ids   string  optional  

Comma seperated list of customer's products: Example: 12345678, 21345678, 32145678

tags   string  optional  

Comma seperated list of customer's tags Example: access_tag, my tag, Multiple words tag

client_id   string   

Client that uses endpoint Example: 1

Response

Response Fields

id   integer   

Course id

type   string   

Course type (public|private|regular).

title   string   

Course title.

handle   string   

Course handle.

description   string   

Course description.

image   string   

Course image.

completionHours   string   

Hours taken to complete the course.

completionMinutes   string   

Minutes taken to complete the course.

tags   string[]   

Either associated product tags or course category (for private and public courses).

Student private courses

requires authentication

Display a list of all available private courses for student.

Example request:
curl --request GET \
    --get "https://courses-plus-api.architechpro.cc/api/v1/student-courses/private?shop=example-shop.myshopify.com&student_id=1&liquid_product_ids[]=13&tags[]=acvogqdwyxy" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/student-courses/private"
);

const params = {
    "shop": "example-shop.myshopify.com",
    "student_id": "1",
    "liquid_product_ids[0]": "13",
    "tags[0]": "acvogqdwyxy",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "private_courses": [
            {
                "private_course_id": 1,
                "shop": "example-shop.myshopify.com",
                "title": "test private course",
                "description": "long course description",
                "short_description": "short description for private course",
                "handle": "test_private_course",
                "certificate": 0,
                "completion_hours": 0,
                "completion_minutes": 0,
                "hidden": 0,
                "buttontext": "private course download link",
                "settings": null,
                "customer_tag_value": null,
                "customer_tag_enabled": 0,
                "order": 0,
                "image": "https://cdn.shopify.com/s/files/1/0504/5829/6488/products/no_image.png",
                "category": "my private courses",
                "created_at": "2023-10-12 07:25:52",
                "updated_at": "2023-10-12 07:25:52"
            }
        ]
    }
}
 

Request   

GET api/v1/student-courses/private

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

student_id   integer   

Id of the student to get private courses info Example: 1

liquid_product_ids   integer[]  optional  
tags   string[]  optional  

Must not be greater than 255 characters.

Response

Response Fields

private_course_id   integer   

Private course id.

shop   string   

Shop where course created

title   string   

Course title.

description   string   

Course description.

short_description   string   

Course short description.

handle   string   

Course handle.

certificate   integer   

Whether certificate send is enabled (0|1).

completion_hours   integer   

Estimated number of hours to complete the course (set in course settings by admin).

completion_minutes   integer   

Estimated number of minutes to complete the course (set in course settings by admin).

hidden   integer   

If the course is hidden (0 or 1) (set in course settings by admin).

buttontext   string   

Text displayed on button that allows to download course materials (set in course settings by admin).

settings   string   

Course settings in json format.

customer_tag_value   string   

Shopify customer tag that will be assigned to the customer after course completion (set in course settings by admin).

customer_tag_enabled   integer   

If the course allows access by tag (set in course settings by admin) (0|1).

order   integer   

Course order both in admin and on the storefront

image   integer   

Course order both in admin and on the storefront

category   integer   

Course order both in admin and on the storefront

create_at   integer   

Course creation datetime

updated_at   integer   

Course updation datetime

Shop courses

The shop courses resource allows you to to retrieve information about all available courses for shop.

Shop courses

requires authentication

Display a list of all available courses for stated shop.

Example request:
curl --request GET \
    --get "https://courses-plus-api.architechpro.cc/api/v1/shop-courses?shop=example-shop.myshopify.com" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"tcditkewi\"
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/shop-courses"
);

const params = {
    "shop": "example-shop.myshopify.com",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "tcditkewi"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
 "courses": [
     {
"id": 123456789,
"type": "regular",
"title": "Paid course",
"handle": "paid-course",
}
 ]
}
 

Request   

GET api/v1/shop-courses

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: tcditkewi

Response

Response Fields

id   integer   

Course id

type   string   

Course type (public|private|regular).

title   string   

Course title.

handle   string   

Course handle.

Courses extensions

APIs for extebsions requests

Courses extensions

requires authentication

Check if order items contains course data

Example request:
curl --request GET \
    --get "https://courses-plus-api.architechpro.cc/api/v1/extensions/check-courses-data?orderId=gid%3A%2F%2Fshopify%2FOrder%2F5904502620480&shop=example-shop.myshopify.com" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"hwajplrtikmtbasynmjpjkm\",
    \"orderId\": 13
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/extensions/check-courses-data"
);

const params = {
    "orderId": "gid://shopify/Order/5904502620480",
    "shop": "example-shop.myshopify.com",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "hwajplrtikmtbasynmjpjkm",
    "orderId": 13
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "status": "true"
}
 

Request   

GET api/v1/extensions/check-courses-data

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

Query Parameters

orderId   string   

order GID Example: gid://shopify/Order/5904502620480

shop   string   

Shopify shop name Example: example-shop.myshopify.com

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: hwajplrtikmtbasynmjpjkm

orderId   integer   

Example: 13

Courses instructors

APIs for retreiving available instructors for courses

Courses instructors

requires authentication

Get information about course instructor.

Example request:
curl --request GET \
    --get "https://courses-plus-api.architechpro.cc/api/v1/instructors/get-course-instructor?product_id=1&shop=example-shop.myshopify.com&type=%28regular%2Copen%2Cprivate%29" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"pxubsrqsrjuxdrqxwxcv\",
    \"product_id\": 1,
    \"type\": \"suscipit\"
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/instructors/get-course-instructor"
);

const params = {
    "product_id": "1",
    "shop": "example-shop.myshopify.com",
    "type": "(regular,open,private)",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "pxubsrqsrjuxdrqxwxcv",
    "product_id": 1,
    "type": "suscipit"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "first_name": "John",
    "last_name": "Smith",
    "image": "https://cdn.shopify.com/proxy/564c6b8525aa273977411fcf65ffc73b3dd0c615a10da1d7d465f43775c8e853/www.gravatar.com/avatar/cb6a8718747fa482212f1eb32eb67c76.jpg?s=2048&d=https%3A%2F%2Fcdn.shopify.com%2Fshopifycloud%2Fshopify%2Fassets%2Fadmin%2Fcustomers%2Fpolaris%2Favatar-1-fce0242e4d66279157b1e260c9163a31bf734548f4d570485a3f543cee0e6664.png",
    "email": "johnsmith@mail.com",
    "twitter": "",
    "title": "John Smith, yuor instructor for this course",
    "facebook": "",
    "bio": "John Smith, expert in yoga field",
    "linkedin": "",
    "settings": "",
    "instagram": "",
    "youtube": "",
    "website": "john-smith.com"
}
 

Request   

GET api/v1/instructors/get-course-instructor

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

Query Parameters

product_id   integer   

Id of the product to get the course info Example: 1

shop   string   

Shopify shop name Example: example-shop.myshopify.com

type   string   

type of course Example: (regular,open,private)

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: pxubsrqsrjuxdrqxwxcv

product_id   integer   

Example: 1

type   string   

Example: suscipit

Response

Response Fields

type   string   

Course type (public|private|regular).

title   string   

Course title.

handle   string   

Course handle.

description   string   

Course description.

image   string   

Course image.

Membership courses

Endpoints to work with membership courses

Endpoints to get information about shop

requires authentication

Display list of courses connected with stated product (could be a bundle (membership) or just a product)

Example request:
curl --request GET \
    --get "https://courses-plus-api.architechpro.cc/api/v1/membership-courses/repellat?shop=example-shop.myshopify.com&product_id=12345678" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"ygipyhwsgqcizzhhqarbnc\"
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/membership-courses/repellat"
);

const params = {
    "shop": "example-shop.myshopify.com",
    "product_id": "12345678",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "ygipyhwsgqcizzhhqarbnc"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "product_ids": [
        12345678,
        12345679,
        12345679
    ]
}
 

Request   

GET api/v1/membership-courses/{membershipId}

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

URL Parameters

membershipId   string   

Example: repellat

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

product_id   string   

Shopify product id Example: 12345678

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: ygipyhwsgqcizzhhqarbnc

Allows to add course (by providing product_id) to a bundle (membership)

requires authentication

Example request:
curl --request PUT \
    "https://courses-plus-api.architechpro.cc/api/v1/membership-courses/omnis?shop=example-shop.myshopify.com&product_id=12345678" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"zujj\",
    \"product_id\": 6
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/membership-courses/omnis"
);

const params = {
    "shop": "example-shop.myshopify.com",
    "product_id": "12345678",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "zujj",
    "product_id": 6
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "updated": true
}
 

Request   

PUT api/v1/membership-courses/{membershipId}

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

URL Parameters

membershipId   string   

Example: omnis

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

product_id   string   

Shopify product id Example: 12345678

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: zujj

product_id   integer   

Example: 6

Allows to delete course (by providing product_id) from a bundle (membership)

requires authentication

Example request:
curl --request DELETE \
    "https://courses-plus-api.architechpro.cc/api/v1/membership-courses/iusto?shop=example-shop.myshopify.com&product_id=12345678" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"lhxmsmwczdpk\",
    \"product_id\": 18
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/membership-courses/iusto"
);

const params = {
    "shop": "example-shop.myshopify.com",
    "product_id": "12345678",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "lhxmsmwczdpk",
    "product_id": 18
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "deleted": "true"
}
 

Request   

DELETE api/v1/membership-courses/{membershipId}

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

URL Parameters

membershipId   string   

Example: iusto

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

product_id   string   

Shopify product id Example: 12345678

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: lhxmsmwczdpk

product_id   integer   

Example: 18

Shop

Endpoints to get information by shop

Endpoints to get information about shop

requires authentication

Check if Courses Plus app is installed on the shop

Example request:
curl --request GET \
    --get "https://courses-plus-api.architechpro.cc/api/v1/installed?shop=example-shop.myshopify.com" \
    --header "X-Api-Access-Token: {YOUR_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "Access-Control-Allow-Origin: *" \
    --data "{
    \"shop\": \"kxscqqsthnahymwgo\"
}"
const url = new URL(
    "https://courses-plus-api.architechpro.cc/api/v1/installed"
);

const params = {
    "shop": "example-shop.myshopify.com",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "X-Api-Access-Token": "{YOUR_ACCESS_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Access-Control-Allow-Origin": "*",
};

let body = {
    "shop": "kxscqqsthnahymwgo"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "installed": true
}
 

Request   

GET api/v1/installed

Headers

X-Api-Access-Token      

Example: {YOUR_ACCESS_TOKEN}

Content-Type      

Example: application/json

Accept      

Example: application/json

Access-Control-Allow-Origin      

Example: *

Query Parameters

shop   string   

Shopify shop name Example: example-shop.myshopify.com

Body Parameters

shop   string   

Must match the regex /^[a-zA-Z0-9-]+.myshopify.com$/. Must not be greater than 255 characters. Example: kxscqqsthnahymwgo