Quest Protocol
  • Introduction
    • Welcome to Quest Protocol
    • Integrate & Partner with Quest
    • Use Cases
      • Creator Platforms
      • Gaming
      • NFT Marketplaces
      • Social Media DApps
      • DeFi
  • QUEST PLATFORM
    • Creating a Campaign
    • Audience Overview
    • User Profile
    • Discover Page
    • Perk Store
    • Integrations
    • Memberships
    • Segmentation & Targetting
    • AI Insights
  • QUEST PROTOCOL - SDKs & APIs
    • UI SDK Components
      • Embedded XP Points
      • Embedded in-dApp Guides
      • Embedded Web3 Search
      • Embedded Quests
    • Quest SDKs & APIs
      • User
      • Entity
      • Badge
      • Campaign
      • App Metric
      • Membership Card
      • Entity Tag
      • Membership Tier
      • Skill
      • Entity Credit Tier
      • Gem
      • Custom Reward
      • Entity Gem
      • Entity Alert
      • Entity Feature Flag
      • Entity Data contract
      • Entity Authentication Token
      • Event Metric Mapping
    • Data Engine
  • Website
  • Quest Thesis
Powered by GitBook
On this page
  1. QUEST PROTOCOL - SDKs & APIs
  2. Quest SDKs & APIs

Skill

PreviousMembership TierNextEntity Credit Tier

Last updated 1 year ago

Get skill details

get

This endpoint retrieves skill details.

Path parameters
skillIdstringRequired
Header parameters
apikeystringRequired

The API key for authentication

Example: test
apisecretstringOptional

The secret key for authentication

Example: test-secret
useridstringRequired

The Id of the user performing the request.

Example: dummy-userid
tokenstringRequired

The token for user authentication.

Example: dummy-token
Responses
200
Successful response
application/json
400
Client error
application/json
401
Unauthorized error
application/json
500
Server error
application/json
get
GET /api/skills/{skillId} HTTP/1.1
Host: api.questprotocol.xyz
apikey: test
userid: dummy-userid
token: dummy-token
Accept: */*
{
  "success": true,
  "data": {
    "skillId": "skill123",
    "parentSkillId": "parentSkill123",
    "name": "Programming",
    "description": "Description of the programming skill",
    "entityId": "entity123",
    "isEnabled": true,
    "createdAt": "2023-06-27T12:45:00Z"
  }
}
  • GETGet all skills
  • POSTAdd new skill
  • GETGet skill details
  • POSTAdd multiple new skills
  • POSTMake payment

Get all skills

get

This endpoint retrieves all the skills.

Query parameters
userIdstringRequired

The Id of the user performing the request.

Example: dummy-userid
entityIdstringRequired

The Id of the entity.

Example: dummy-entityid
Header parameters
apikeystringRequired

The API key for authentication

Example: test
apisecretstringOptional

The secret key for authentication

Example: test-secret
useridstringRequired

The Id of the user performing the request.

Example: dummy-userid
tokenstringRequired

The token for user authentication.

Example: dummy-token
Responses
200
Successful response
application/json
400
Client error
application/json
401
Unauthorized error
application/json
500
Server error
application/json
get
GET /api/skills HTTP/1.1
Host: api.questprotocol.xyz
apikey: test
userid: dummy-userid
token: dummy-token
Accept: */*
{
  "success": true,
  "data": [
    {
      "skillId": "skill-23",
      "parentSkillId": "skill-100",
      "name": "Java",
      "description": "bunch of boilerplate"
    }
  ]
}

Add new skill

post

This endpoint allows to add a new skill.

Query parameters
userIdstringRequired

The Id of the user performing the request.

Example: dummy-userid
Header parameters
apikeystringRequired

The API key for authentication

Example: test
apisecretstringOptional

The secret key for authentication

Example: test-secret
tokenstringRequired

The token for user authentication.

Example: dummy-token
Body
entityIdstringRequiredExample: entity-101
namestringRequiredExample: Java
descriptionstringRequiredExample: Java super slow
Responses
200
Successful response
application/json
400
Client error
application/json
500
Server error
application/json
post
POST /api/skills HTTP/1.1
Host: api.questprotocol.xyz
apikey: test
token: dummy-token
Content-Type: application/json
Accept: */*
Content-Length: 71

{
  "entityId": "entity-101",
  "name": "Java",
  "description": "Java super slow"
}
{
  "success": true,
  "skillId": "skill-101"
}

Add multiple new skills

post

This endpoint allows to add multiple new skills.

Query parameters
userIdstringRequired

The Id of the user performing the request.

Example: dummy-userid
Header parameters
apikeystringRequired

The API key for authentication

Example: test
apisecretstringOptional

The secret key for authentication

Example: test-secret
tokenstringRequired

The token for user authentication.

Example: dummy-token
Body
entityIdstringRequiredExample: entity-101
skillsobject[]RequiredExample: [{"name":"Java","description":"Java super slow"}]
Responses
200
Successful response
application/json
400
Client error
application/json
500
Server error
application/json
post
POST /api/skills/multiple HTTP/1.1
Host: api.questprotocol.xyz
apikey: test
token: dummy-token
Content-Type: application/json
Accept: */*
Content-Length: 84

{
  "entityId": "entity-101",
  "skills": [
    {
      "name": "Java",
      "description": "Java super slow"
    }
  ]
}
{
  "success": true,
  "skillIds": [
    "skill-101",
    "skill-102"
  ]
}

Make payment

post

This endpoint allows to make payment.

Header parameters
apikeystringRequired

The API key for authentication

Example: test
apisecretstringOptional

The secret key for authentication

Example: test-secret
useridstringRequired

The Id of the user performing the request.

Example: dummy-userid
tokenstringRequired

The token for user authentication.

Example: dummy-token
Body
idstringRequiredExample: stripe-payment-method-id
Responses
200
Successful response
application/json
400
Client error
application/json
500
Server error
application/json
post
POST /api/payment/pay HTTP/1.1
Host: api.questprotocol.xyz
apikey: test
userid: dummy-userid
token: dummy-token
Content-Type: application/json
Accept: */*
Content-Length: 195

{
  "id": "stripe-payment-method-id",
  "product": {
    "price": 100
  },
  "cardData": {
    "email": "[email protected]",
    "name": "Jon Doe",
    "country": "India",
    "zip": 12020
  },
  "info": {
    "userId": "u-1202",
    "entityId": "e-0000000000"
  }
}
{
  "success": true,
  "data": {}
}