import { Authlete } from "@authlete/typescript-sdk";
const authlete = new Authlete({
bearer: process.env["AUTHLETE_BEARER"] ?? "",
});
async function run() {
const result = await authlete.verifiableCredentials.getOfferInfo({
serviceId: "<id>",
vciOfferInfoRequest: {},
});
console.log(result);
}
run();require 'authlete_ruby_sdk'
Models = ::Authlete::Models
s = ::Authlete::Client.new(
bearer: '<YOUR_BEARER_TOKEN_HERE>'
)
res = s.verifiable_credentials.offer_info(service_id: '<id>', vci_offer_info_request: Models::Components::VciOfferInfoRequest.new)
unless res.vci_offer_info_response.nil?
# handle response
endpackage main
import(
"context"
"os"
authlete "github.com/authlete/authlete-go-sdk"
"github.com/authlete/authlete-go-sdk/models/components"
"log"
)
func main() {
ctx := context.Background()
s := authlete.New(
authlete.WithSecurity(os.Getenv("AUTHLETE_BEARER")),
)
res, err := s.VerifiableCredentials.GetOfferInfo(ctx, "<id>", components.VciOfferInfoRequest{})
if err != nil {
log.Fatal(err)
}
if res.VciOfferInfoResponse != nil {
// handle response
}
}curl --request POST \
--url https://us.authlete.com/api/{serviceId}/vci/offer/info \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"identifier": "<string>"
}
'{
"resultCode": "<string>",
"resultMessage": "<string>",
"action": "OK",
"info": {
"identifier": "<string>",
"credentialOffer": "<string>",
"credentialIssuer": "<string>",
"authorizationCodeGrantIncluded": true,
"issuerStateIncluded": true,
"issuerState": "<string>",
"preAuthorizedCodeGrantIncluded": true,
"preAuthorizedCode": "<string>",
"subject": "<string>",
"expiresAt": 123,
"context": "<string>",
"properties": [
{
"key": "<string>",
"value": "<string>",
"hidden": true
}
],
"jwtAtClaims": "<string>",
"authTime": 123,
"acr": "<string>",
"credentialConfigurationIds": [
"<string>"
],
"txCode": "<string>",
"txCodeInputMode": "<string>",
"txCodeDescription": "<string>"
}
}{
"resultCode": "A001201",
"resultMessage": "[A001201] /auth/authorization, TLS must be used."
}{
"resultCode": "A001202",
"resultMessage": "[A001202] /auth/authorization, Authorization header is missing."
}{
"resultCode": "A001215",
"resultMessage": "[A001215] /auth/authorization, The client (ID = 26837717140341) is locked."
}{
"resultCode": "A001311",
"resultMessage": "[A001311] /auth/authorization, Too many requests, retry after 1 seconds. (Entity: 23769878923/87122303)"
}{
"resultCode": "A001101",
"resultMessage": "[A001101] /auth/authorization, Authlete Server error."
}Get Credential Offer Information
Get information about a verifiable credential offer
import { Authlete } from "@authlete/typescript-sdk";
const authlete = new Authlete({
bearer: process.env["AUTHLETE_BEARER"] ?? "",
});
async function run() {
const result = await authlete.verifiableCredentials.getOfferInfo({
serviceId: "<id>",
vciOfferInfoRequest: {},
});
console.log(result);
}
run();require 'authlete_ruby_sdk'
Models = ::Authlete::Models
s = ::Authlete::Client.new(
bearer: '<YOUR_BEARER_TOKEN_HERE>'
)
res = s.verifiable_credentials.offer_info(service_id: '<id>', vci_offer_info_request: Models::Components::VciOfferInfoRequest.new)
unless res.vci_offer_info_response.nil?
# handle response
endpackage main
import(
"context"
"os"
authlete "github.com/authlete/authlete-go-sdk"
"github.com/authlete/authlete-go-sdk/models/components"
"log"
)
func main() {
ctx := context.Background()
s := authlete.New(
authlete.WithSecurity(os.Getenv("AUTHLETE_BEARER")),
)
res, err := s.VerifiableCredentials.GetOfferInfo(ctx, "<id>", components.VciOfferInfoRequest{})
if err != nil {
log.Fatal(err)
}
if res.VciOfferInfoResponse != nil {
// handle response
}
}curl --request POST \
--url https://us.authlete.com/api/{serviceId}/vci/offer/info \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"identifier": "<string>"
}
'{
"resultCode": "<string>",
"resultMessage": "<string>",
"action": "OK",
"info": {
"identifier": "<string>",
"credentialOffer": "<string>",
"credentialIssuer": "<string>",
"authorizationCodeGrantIncluded": true,
"issuerStateIncluded": true,
"issuerState": "<string>",
"preAuthorizedCodeGrantIncluded": true,
"preAuthorizedCode": "<string>",
"subject": "<string>",
"expiresAt": 123,
"context": "<string>",
"properties": [
{
"key": "<string>",
"value": "<string>",
"hidden": true
}
],
"jwtAtClaims": "<string>",
"authTime": 123,
"acr": "<string>",
"credentialConfigurationIds": [
"<string>"
],
"txCode": "<string>",
"txCodeInputMode": "<string>",
"txCodeDescription": "<string>"
}
}{
"resultCode": "A001201",
"resultMessage": "[A001201] /auth/authorization, TLS must be used."
}{
"resultCode": "A001202",
"resultMessage": "[A001202] /auth/authorization, Authorization header is missing."
}{
"resultCode": "A001215",
"resultMessage": "[A001215] /auth/authorization, The client (ID = 26837717140341) is locked."
}{
"resultCode": "A001311",
"resultMessage": "[A001311] /auth/authorization, Too many requests, retry after 1 seconds. (Entity: 23769878923/87122303)"
}{
"resultCode": "A001101",
"resultMessage": "[A001101] /auth/authorization, Authlete Server error."
}Authorizations
Authenticate every request with a Service Access Token or Organization Token.
Set the token value in the Authorization: Bearer <token> header.
Service Access Token: Scoped to a single service. Use when automating service-level configuration or runtime flows.
Organization Token: Scoped to the organization; inherits permissions across services. Use for org-wide automation or when managing multiple services programmatically.
Both token types are issued by the Authlete console or provisioning APIs.
Path Parameters
A service ID.
Body
The identifier of the credential offer.
Response
Credential offer info retrieved successfully
The code which represents the result of the API call.
A short message which explains the result of the API call.
The result of the /vci/offer/info API call.
OK, FORBIDDEN, NOT_FOUND, CALLER_ERROR, AUTHLETE_ERROR Show child attributes
Show child attributes