Skip to content

Commit

Permalink
GITBOOK-318: Update to getting started with cheqd Studio
Browse files Browse the repository at this point in the history
  • Loading branch information
Tweeddalex authored and gitbook-bot committed Jul 3, 2024
1 parent 7aaf8de commit 26ead21
Show file tree
Hide file tree
Showing 5 changed files with 108 additions and 34 deletions.
2 changes: 2 additions & 0 deletions SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
* [Product Overview](README.md)
* [➡️ Get started with cheqd Studio](getting-started/studio/README.md)
* [👉 Set up your account](getting-started/studio/set-up-account.md)
* [🗝️ API keys](getting-started/studio/api-keys.md)
* [🪙 Token top up](getting-started/studio/token-top-up.md)
* [🔄 Advanced configuration options](getting-started/studio/advanced.md)
* [🎨 Design your Solution](getting-started/studio/design/README.md)
* [Establish Parties in Trust Ecosystem](getting-started/studio/design/establish-parties.md)
Expand Down
2 changes: 1 addition & 1 deletion getting-started/studio/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Using REST APIs, customers can build cheqd's trust infrastructure into existing

## Get started

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>Sign in / Sign up</strong></mark></td><td>Head to our cheqd Studio and <strong>click Log In</strong> to create an account and get started.</td><td><a href="https://credential-service.cheqd.net/swagger/#/">https://credential-service.cheqd.net/swagger/#/</a></td></tr><tr><td><mark style="color:blue;"><strong>Advanced config options</strong></mark></td><td>Run cheqd Studio yourself or utilise your own external database.</td><td><a href="advanced.md">advanced.md</a></td></tr></tbody></table>
<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>Set up your account</strong></mark></td><td>Begin your cheqd Studio set up, creating your account, creating an API key and authenticating with our APIs.</td><td><a href="set-up-account.md">set-up-account.md</a></td></tr><tr><td><mark style="color:blue;"><strong>Advanced config options</strong></mark></td><td>Run cheqd Studio yourself or utilise your own external database.</td><td><a href="advanced.md">advanced.md</a></td></tr></tbody></table>

## Features

Expand Down
38 changes: 38 additions & 0 deletions getting-started/studio/api-keys.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# 🗝️ API keys

API keys are unique data strings used to authenticate a user and enable access to privileged operations on cheqd Studio APIs. All cheqd Studio APIs use API keys as the mechanism to **authenticate client requests**. Your API key should be kept confidential and secure at all times.

* Authentication is required for all API requests; without it, the requests will fail.
* All API requests must be made over HTTPS.

{% hint style="info" %}
### 🚧Keep Your API Keys Safe

Because our API keys allow access to cheqd Studio APIs, you must keep them secure at all times.

* Ensure your API key is always stored securely as soon as it is initially generated.
* Make sure to copy your API key into a secure place, such as a Password Manager.
* Never share it or record it in a publicly accessible medium (client-side code, public repositories, etc.).

**Caution:** If you lose secure control of your API keys, your entity may not be able to access your created DIDs, DID-Linked Resources or Credential Payments.
{% endhint %}

## Step 1: Sign into cheqd Studio

Follow the tutorial here to get started with your cheqd Studio account.

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>Set up your account</strong></mark></td><td>Get started with cheqd Studio, setting up your account and selecting a Billing Plan.</td><td><a href="set-up-account.md">set-up-account.md</a></td></tr></tbody></table>

## Step 2: Generate API key

Navigate to the "**Developers**" tab on cheqd Studio and select "**Create an API Key**". You are able to choose the expiry date of the API key, and it will automatically be set to expire 1 year from the current date.

## Step 3: Use your API key to authenticate with cheqd Studio APIs

Navigate to the "**APIs**" tab and copy/paste your API key into the API key box towards the top of your page. This will enable you to **authenticate with the cheqd Studio APIs**, allowing users to use cheqd Studio APIs within their existing Billing Plan and usage limits.

## Step 4: Start using cheqd

Get started with our tutorials for cheqd Studio functionality.

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>DIDs and Identity Keys</strong></mark></td><td>Create <code>did:cheqd</code> DIDs for credential issuers and for DID-Linked Resources</td><td><a href="../../studio/dids/create-did.md">create-did.md</a></td></tr><tr><td><mark style="color:blue;"><strong>Trust Registries</strong></mark></td><td>Create an end-to-end trusted ecosystem, using Trust Chains to build a full Trust Registry.</td><td><a href="../../studio/trust-registries/">trust-registries</a></td></tr><tr><td><mark style="color:blue;"><strong>Payments</strong></mark></td><td>Create commercial models for verifiable credentials, such as verifier-pays-issuer</td><td><a href="../../studio/payments/">payments</a></td></tr><tr><td><mark style="color:blue;"><strong>Status Lists</strong></mark></td><td>Create status lists, including Status List v2021 and Token Status List</td><td><a href="../../studio/status-lists/">status-lists</a></td></tr><tr><td><mark style="color:blue;"><strong>Credentials</strong></mark></td><td>Issue any type of credential, including SD-JWT, VCDM and AnonCreds via our partners, including trust registries, status lists and payments.</td><td><a href="../../studio/credentials/">credentials</a></td></tr><tr><td><mark style="color:blue;"><strong>Resources</strong></mark></td><td>Create custom resources for policies, presentation definitions, schemas and visual representations of credentials</td><td><a href="../../studio/did-linked-resources/">did-linked-resources</a></td></tr></tbody></table>
48 changes: 15 additions & 33 deletions getting-started/studio/set-up-account.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ description: Learn how to set up your account on cheqd Studio.

# 👉 Set up your account

The user is required to **Log In** to cheqd Studio and authenticate in order to access the APIs. This guards the API from unauthorized access and is required for both testing production environments.
The user is required to **Log In** to our **cheqd Studio** portal, select a billing plan and then access their API key to authenticate with our APIs. The API key guards the API from unauthorized access and is required for both testing production environments.

## Step 1: Click Log In on cheqd Studio Swagger
## Step 1: Get started with cheqd Studio portal

Head to our [**cheqd Studio**](https://credential-service.cheqd.net/swagger/#/) and click **Log In** to get started.
Head to our [**cheqd Studio**](https://credential-service.cheqd.net/swagger/#/) and click **Sign up** or **Log in** to get started.

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>cheqd Studio</strong></mark></td><td>Click here to access cheqd Studio Swagger UI to get started with the REST API interface. Log in to get started.</td><td><a href="https://credential-service.cheqd.net/swagger/#/">https://credential-service.cheqd.net/swagger/#/</a></td></tr></tbody></table>
<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>cheqd Studio</strong></mark></td><td>Click here to access cheqd Studio dashboard to get started with a billing plan and creating API keys. </td><td><a href="https://portal.cheqd.net/">https://portal.cheqd.net/</a></td></tr></tbody></table>

cheqd Studio uses a [third party service called LogTo](https://logto.io/) to handle user authentication and login. This allows users to create new accounts as well as sign in using their email, Google single sign-on, or Discord login.&#x20;

Expand All @@ -24,40 +24,22 @@ cheqd Studio uses a [third party service called LogTo](https://logto.io/) to han

</div>

## Step 2: Locate your cheqd address (for CHEQ)
## Step 2: Select a Billing plan

The following API can be used to fetch the new account information:
Once a user has signed in or created a new account, they will need to select a **Billing Plan** from the **Billing tab** on the **cheqd Studio dashboard**.&#x20;

* `customer_id` is used as an identifier for the particular customer using cheqd Studio. It is generated as a sub-field of the JWT token used in the authorization header.
* `cheqd_account` is used to pay for identity transactions on either `testnet` or `mainnet`. A cheqd account is automatically generated when a new `customer_id` is generated.
You will be able to get started for free by selecting the **"Test"** plan, which includes a **Free Trial**. cheqd Studio billing uses [Stripe](https://stripe.com/au) as a payments processor and users will need to input their card information to initiate a billing plan.&#x20;

{% swagger src="https://raw.githubusercontent.com/cheqd/credential-service/main/src/static/swagger-api.json" path="/account" method="get" expanded="true" %}
[https://raw.githubusercontent.com/cheqd/credential-service/main/src/static/swagger-api.json](https://raw.githubusercontent.com/cheqd/credential-service/main/src/static/swagger-api.json)
{% endswagger %}
{% hint style="info" %}
New users can cancel their cheqd Studio plan at any time within the **free trial period** and will not be charged.
{% endhint %}

## (Optional) Step 3: Adding CHEQ tokens to your account
## Step 3: Create a new API key and authenticate with cheqd Studio APIs

Users will need to add our token, CHEQ, to their `cheqd_account` on `mainnet` in order to be able to use the ledger-based identity functionality on cheqd Studio, such as creating DIDs and DID-Linked Resources.
<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>API keys</strong></mark></td><td>Create a new API key to authenticate with the cheqd Studio APIs.</td><td><a href="api-keys.md">api-keys.md</a></td></tr></tbody></table>

If you need to add CHEQ tokens to your cheqd Studio `cheqd_account`, there are a few steps you need to follow:
## Step 4: Start using cheqd

<details>
Get started with our tutorials for cheqd Studio functionality.

<summary>Mainnet</summary>

* First you need to [setup your wallet](../../network/wallets/) which is able to hold CHEQ tokens. We recommend using [Leap Wallet](https://www.leapwallet.io/) which natively supports all CHEQ transactions in a browser plugin or on mobile. Alternatively, follow the [tutorial here to setup your Keplr wallet](../../network/wallets/keplr-setup.md).
* You will then need to [get CHEQ tokens from any of the listed providers here](https://cheqd.io/get-involved/).
* You will need to send CHEQ tokens from your new cheqd Wallet account to your `cheqd_account` address for using the Credential Service.

</details>

<details>

<summary>Testnet</summary>

* It is unlikely that you will ever need to top up your Testnet account, as this is handled automatically. However, in the event that your Testnet account runs out of tokens, you can follow the step below.
* This is super simple. You can add free CHEQ tokens to your cheqd\_account [via our Testnet Faucet](../../network/tools/testnet-faucet.md) by inputting your cheqd account address. Access the [Testnet Faucet directly here](https://testnet-faucet.cheqd.io/).

</details>

Once you have successfully created an account and have topped up your CHEQ tokens, you are ready to get started!
<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>DIDs and Identity Keys</strong></mark></td><td>Create <code>did:cheqd</code> DIDs for credential issuers and for DID-Linked Resources</td><td><a href="../../studio/dids/create-did.md">create-did.md</a></td></tr><tr><td><mark style="color:blue;"><strong>Trust Registries</strong></mark></td><td>Create an end-to-end trusted ecosystem, using Trust Chains to build a full Trust Registry.</td><td><a href="../../studio/trust-registries/">trust-registries</a></td></tr><tr><td><mark style="color:blue;"><strong>Payments</strong></mark></td><td>Create commercial models for verifiable credentials, such as verifier-pays-issuer</td><td><a href="../../studio/payments/">payments</a></td></tr><tr><td><mark style="color:blue;"><strong>Status Lists</strong></mark></td><td>Create status lists, including Status List v2021 and Token Status List</td><td><a href="../../studio/status-lists/">status-lists</a></td></tr><tr><td><mark style="color:blue;"><strong>Credentials</strong></mark></td><td>Issue any type of credential, including SD-JWT, VCDM and AnonCreds via our partners, including trust registries, status lists and payments.</td><td><a href="../../studio/credentials/">credentials</a></td></tr><tr><td><mark style="color:blue;"><strong>Resources</strong></mark></td><td>Create custom resources for policies, presentation definitions, schemas and visual representations of credentials</td><td><a href="../../studio/did-linked-resources/">did-linked-resources</a></td></tr></tbody></table>
52 changes: 52 additions & 0 deletions getting-started/studio/token-top-up.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# 🪙 Token top up

Users may exhaust their usage limits in their cheqd Studio billing plan, but may want to continue using the Studio before their usage limits refresh. Therefore, users can manually top up their account with CHEQ tokens to use any APIs that involve a ledger-write, e.g:

1. Creating, Updating or Deactivating DIDs
2. Creating unencrypted or encrypted Status Lists
3. Creating Trust Registries
4. Creating other DID-Linked Resources

## Step 1: Locate your cheqd address (for CHEQ)

The following API can be used to fetch the new account information:

* `customer_id` is used as an identifier for the particular customer using cheqd Studio. It is generated as a sub-field of the JWT token used in the authorization header.
* `cheqd_account` is used to pay for identity transactions on either `testnet` or `mainnet`. A cheqd account is automatically generated when a new `customer_id` is generated.

{% swagger src="https://raw.githubusercontent.com/cheqd/credential-service/main/src/static/swagger-api.json" path="/account" method="get" expanded="true" %}
[https://raw.githubusercontent.com/cheqd/credential-service/main/src/static/swagger-api.json](https://raw.githubusercontent.com/cheqd/credential-service/main/src/static/swagger-api.json)
{% endswagger %}

## Step 2: Adding CHEQ tokens to your account

Users will need to add our token, CHEQ, to their `cheqd_account` on `mainnet` in order to be able to use the ledger-based identity functionality on cheqd Studio, such as creating DIDs and DID-Linked Resources.

If you need to add CHEQ tokens to your cheqd Studio `cheqd_account`, there are a few steps you need to follow:

<details>

<summary>Mainnet</summary>

* First you need to [setup your wallet](../../network/wallets/) which is able to hold CHEQ tokens. We recommend using [Leap Wallet](https://www.leapwallet.io/) which natively supports all CHEQ transactions in a browser plugin or on mobile. Alternatively, follow the [tutorial here to setup your Keplr wallet](../../network/wallets/keplr-setup.md).
* You will then need to [get CHEQ tokens from any of the listed providers here](https://cheqd.io/get-involved/).
* You will need to send CHEQ tokens from your new cheqd Wallet account to your `cheqd_account` address for using the Credential Service.

</details>

<details>

<summary>Testnet</summary>

* It is unlikely that you will ever need to top up your Testnet account, as this is handled automatically. However, in the event that your Testnet account runs out of tokens, you can follow the step below.
* This is super simple. You can add free CHEQ tokens to your cheqd\_account [via our Testnet Faucet](../../network/tools/testnet-faucet.md) by inputting your cheqd account address. Access the [Testnet Faucet directly here](https://testnet-faucet.cheqd.io/).

</details>

Once you have successfully created an account and have topped up your CHEQ tokens, you are ready to get started!

## Step 3: Continue using cheqd

Get started with our tutorials for cheqd Studio functionality.

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>DIDs and Identity Keys</strong></mark></td><td>Create <code>did:cheqd</code> DIDs for credential issuers and for DID-Linked Resources</td><td><a href="../../studio/dids/create-did.md">create-did.md</a></td></tr><tr><td><mark style="color:blue;"><strong>Trust Registries</strong></mark></td><td>Create an end-to-end trusted ecosystem, using Trust Chains to build a full Trust Registry.</td><td><a href="../../studio/trust-registries/">trust-registries</a></td></tr><tr><td><mark style="color:blue;"><strong>Payments</strong></mark></td><td>Create commercial models for verifiable credentials, such as verifier-pays-issuer</td><td><a href="../../studio/payments/">payments</a></td></tr><tr><td><mark style="color:blue;"><strong>Status Lists</strong></mark></td><td>Create status lists, including Status List v2021 and Token Status List</td><td><a href="../../studio/status-lists/">status-lists</a></td></tr><tr><td><mark style="color:blue;"><strong>Credentials</strong></mark></td><td>Issue any type of credential, including SD-JWT, VCDM and AnonCreds via our partners, including trust registries, status lists and payments.</td><td><a href="../../studio/credentials/">credentials</a></td></tr><tr><td><mark style="color:blue;"><strong>Resources</strong></mark></td><td>Create custom resources for policies, presentation definitions, schemas and visual representations of credentials</td><td><a href="../../studio/did-linked-resources/">did-linked-resources</a></td></tr></tbody></table>

0 comments on commit 26ead21

Please sign in to comment.