devdocs.educhain.xyz
  • Getting Started
  • EDUChain
    • What is EDUChain?
    • Arbitrum Orbit Overview
    • How to Run a Full Node for an Orbit Chain
    • Block Explorer
  • Start Building
    • Quick Start
    • Faucet
    • Asset Bridging
    • Smart Contracts
      • Write a Contract
      • Deploy Using Hardhat
      • Verify Contracts
    • Open Campus ID Connect SDK
    • Open Campus Achievements
      • Introduction
      • Getting Started
      • Integration Guide
      • API Specifications
      • Appendix
  • Services
    • Automation & Off-chain Data
      • Gelato Web3 Functions
    • Bridges
      • Layer Zero
    • Indexers
      • Goldsky
    • Oracles
      • DIA
    • Relay
      • Gelato Relay
    • Wallets
      • Privy
      • Web3Auth
  • Support Resources
    • Community Forum
    • Developer Support
  • FAQ
    • FAQ
Powered by GitBook
On this page
  • Expected User Flow
  • 1. Requesting for an OC Developer Account
  • 2. Setting up your Open Campus ID (Sandbox)
  • 2. Issuing Open Campus Achievements (Sandbox)
  • 3. Preparing for Production
Export as PDF
  1. Start Building
  2. Open Campus Achievements

Integration Guide

PreviousGetting StartedNextAPI Specifications

Last updated 29 days ago

Expected User Flow

This is the expected user flow for third party platforms looking to integrate OCAs into their ecosystem. At this moment, OCAs can only be issued to an OCID account, therefore it is important that the OCID Connect portion is set up on your platform before any issuance happens.

1. Requesting for an OC Developer Account

2. Setting up your Open Campus ID (Sandbox)

When you have completed the integration on production, you should have a “Connect with OCID” that allows you to:

  • Create a new OCID

  • Login and connect an existing OCID

Before you move on to the next segment, it is recommended that you generate two OCID accounts:

  1. Issuer’s OCID: This is the OCID account that will be requesting for Issuer permission and also become the Issuing entity for OCAs later. This should be the OCID that already has access to the developer portal

  2. User’s OCID: This is the OCID account that will be receiving the OCA and view them on the OCID Dashboard.

2. Issuing Open Campus Achievements (Sandbox)

Select "Request staging key" and allow a few minutes for your keys to be generated in the backend.

Once your staging API keys are generated, you should be able to see the two parameters that you need for integration:

  • Staging API Key

  • DID String

Authorization

Once your obtained an API Key from the dashboard, you can use your API Key in the HTTP POST header for authorization:

Header: { X-API-KEY: <your api key> }

Staging endpoint for OCA Issuance:

POST https://api.vc.staging.opencampus.xyz/issuer/vc

Body Params (JSON)

Sample Body (raw JSON):

{
	"credentialPayload": { ... },
	"holderOcId": "bob.edu"
}

name
type
example

credentialPayload

object

holderOcId

string

bob.edu

OCID Dashboard

Once you have successfully issued the OCA to a holder’s OCID, there are two ways that you can view the OCA:

  1. View the holder’s public profile at https://id.sandbox.opencampus.xyz/public/credentials?username=<OC_ID>

3. Preparing for Production

In order to ensure that third party integrations are successful and did not deviate too much from the intended flow of how OCAs should be issued, we require teams to do a recording of their integrated flow on the sandbox environment and submit to the Open Campus team via the form below. Please reach out to @kittyvo and @lewlian to escalate your review process.

To promote the sandbox environment to production, you will need:

  1. Request for Issuer’s production API Key

    1. Once this is approved, you will be informed and able to view your API Key and DID Key for production from the OC Developer Dashboard

    2. Then replace with the production issuance endpoint

      POST <https://api.vc.opencampus.xyz/issuer/vc>

Secure your API Key safely, your API Key is tied to your issuer identity and losing your API Key means allowing others to issue Achievements on your behalf.

We have just launched the OC Developer portal hoping to scale up the capability of self-served integration for developers and partners. Head to to create an OCID if you have not already done so.

Once you've done so, prepare the following information and head to and apply for a developer account with your OCID. It will take typically 3-5 working days for review, alternatively you can reach out to @lewlian on telegram to expedite your approval if needed.

A sandbox environment can be activated in the SDK for development purposes. Please find the full guide for Open Campus ID Connect integration

Update: You no longer require a sandbox OCID to test the staging endpoint. You can use your actual production OCID for both staging and production OCA testing. Make sure you have a valid OCID from

On a high level, a Sandbox Issuer’s API Key will be needed to issue an OCA with the sandbox API endpoint provided. To obtain it, please head to and login with the OCID account registered as a developer. Click on "OCA API Keys".

If you have followed the , holderOcId will refer to the User’s OCID that you generated in the previous segment. If you only have one OCID generated you may also issue an OCA to the issuer’s account.

If you wish to find out more about the specifications for each of the properties in the body params, please refer to . You will also find the recommended image dimensions for OCAs there.

Logging in to the Open Campus ID Dashboard in the sandbox environment using the holder’s account at

Complete and submit this to the Open Campus team

{"validFrom": "2023-12-10T16:00:00.000Z",
    "awardedDate": "2023-12-10T16:00:00.000Z",
    "description": "An achievement for achieving outstanding results in mathematics course",
    "credentialSubject": {
        "name": "John Doe",
        "type": "Person",
        "email": "[johndoe@something.edu](mailto:johndoe@something.edu)",
        "image": "[https://img.freepik.com/premium-vector/gold-medal-with-gold-ribbon-that-says-gold_1134661-43944.jpg](https://img.freepik.com/premium-vector/gold-medal-with-gold-ribbon-that-says-gold_1134661-43944.jpg)",
        "profileUrl": "[https://mycourse.xyz/profile/johndoe](https://mycourse.xyz/profile/johndoe)",
        "achievement": {
            "name": "Gold Medal Achievements",
            "identifier": "tt:1111222333",
            "description": "Reached 200 points in the intermediate mathematics",
            "achievementType": "Achievement"
        }
    }
}
https://auth.opencampus.xyz/login
https://developers.opencampus.xyz/login
here
https://auth.opencampus.xyz/login
https://developers.opencampus.xyz
guide
API Specifications
https://id.sandbox.opencampus.xyz
form
Onboarding form for developer account
Post application screen (pending approval)
OC Developer Dashboard
Before generating OCA Staging API Keys
After generating OCA Staging API Keys