For the complete documentation index, see llms.txt. This page is also available as Markdown.

Contracts

get

Gets Consent Flow Contract Details

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
uristringRequired
Responses
200

Successful response

application/json
namestringRequired
subtitlestringOptional
descriptionstringOptional
reasonForAccessingstringOptional
imagestringOptional
uristringRequired
needsGuardianConsentbooleanOptional
redirectUrlstringOptional
frontDoorBoostUristringOptional
createdAtstringRequired
updatedAtstringRequired
expiresAtstringOptional
autoBoostsstring[]Optional
get/consent-flow-contract
GET /api/consent-flow-contract?uri=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "contract": {
    "read": {
      "anonymize": true,
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true,
            "defaultEnabled": true
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": {
          "required": true,
          "defaultEnabled": true
        }
      }
    },
    "write": {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true,
            "defaultEnabled": true
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": {
          "required": true,
          "defaultEnabled": true
        }
      }
    }
  },
  "owner": {
    "profileId": "text",
    "displayName": "",
    "shortBio": "",
    "bio": "",
    "did": "text",
    "isPrivate": true,
    "profileVisibility": "public",
    "showEmail": false,
    "allowConnectionRequests": "anyone",
    "email": "text",
    "image": "text",
    "heroImage": "text",
    "websiteLink": "text",
    "isServiceProfile": false,
    "type": "text",
    "notificationsWebhook": "https://example.com",
    "display": {
      "backgroundColor": "text",
      "backgroundImage": "text",
      "fadeBackgroundImage": true,
      "repeatBackgroundImage": true,
      "fontColor": "text",
      "accentColor": "text",
      "accentFontColor": "text",
      "idBackgroundImage": "text",
      "fadeIdBackgroundImage": true,
      "idBackgroundColor": "text",
      "repeatIdBackgroundImage": true
    },
    "highlightedCredentials": [
      "text"
    ],
    "role": "",
    "dob": "",
    "country": "text",
    "locale": "text",
    "approved": true
  },
  "name": "text",
  "subtitle": "text",
  "description": "text",
  "reasonForAccessing": "text",
  "image": "text",
  "uri": "text",
  "needsGuardianConsent": true,
  "redirectUrl": "text",
  "frontDoorBoostUri": "text",
  "createdAt": "text",
  "updatedAt": "text",
  "expiresAt": "text",
  "autoBoosts": [
    "text"
  ],
  "writers": [
    {
      "profileId": "text",
      "displayName": "",
      "shortBio": "",
      "bio": "",
      "did": "text",
      "isPrivate": true,
      "profileVisibility": "public",
      "showEmail": false,
      "allowConnectionRequests": "anyone",
      "email": "text",
      "image": "text",
      "heroImage": "text",
      "websiteLink": "text",
      "isServiceProfile": false,
      "type": "text",
      "notificationsWebhook": "https://example.com",
      "display": {
        "backgroundColor": "text",
        "backgroundImage": "text",
        "fadeBackgroundImage": true,
        "repeatBackgroundImage": true,
        "fontColor": "text",
        "accentColor": "text",
        "accentFontColor": "text",
        "idBackgroundImage": "text",
        "fadeIdBackgroundImage": true,
        "idBackgroundColor": "text",
        "repeatIdBackgroundImage": true
      },
      "highlightedCredentials": [
        "text"
      ],
      "role": "",
      "dob": "",
      "country": "text",
      "locale": "text",
      "approved": true
    }
  ]
}

Create Consent Flow Contract

post

Creates a Consent Flow Contract for a profile

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
namestringRequired
subtitlestringOptional
descriptionstringOptional
reasonForAccessingstringOptional
needsGuardianConsentbooleanOptional
redirectUrlstringOptional
frontDoorBoostUristringOptional
imagestringOptional
expiresAtstringOptional
writersstring[]Optional
Responses
200

Successful response

application/json
stringOptional
post/consent-flow-contract
POST /api/consent-flow-contract HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 700

{
  "contract": {
    "read": {
      "anonymize": true,
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true,
            "defaultEnabled": true
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": {
          "required": true,
          "defaultEnabled": true
        }
      }
    },
    "write": {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true,
            "defaultEnabled": true
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": {
          "required": true,
          "defaultEnabled": true
        }
      }
    }
  },
  "name": "text",
  "subtitle": "text",
  "description": "text",
  "reasonForAccessing": "text",
  "needsGuardianConsent": true,
  "redirectUrl": "text",
  "frontDoorBoostUri": "text",
  "image": "text",
  "expiresAt": "text",
  "autoboosts": [
    {
      "boostUri": "text",
      "signingAuthority": {
        "endpoint": "text",
        "name": "text"
      }
    }
  ],
  "writers": [
    "text"
  ]
}
text
delete

This route deletes a Consent Flow Contract

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
uristringRequired
Responses
200

Successful response

application/json
booleanOptional
delete/consent-flow-contract
DELETE /api/consent-flow-contract?uri=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
true

Get Consent Flow Contracts

post

Gets Consent Flow Contracts for a profile

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contracts
POST /api/consent-flow-contracts HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 352

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "query": {
    "read": {
      "anonymize": true,
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": {
          "required": true
        }
      }
    },
    "write": {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": {
          "required": true
        }
      }
    }
  }
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "contract": {
        "read": {
          "anonymize": true,
          "credentials": {
            "categories": {
              "ANY_ADDITIONAL_PROPERTY": {
                "required": true,
                "defaultEnabled": true
              }
            }
          },
          "personal": {
            "ANY_ADDITIONAL_PROPERTY": {
              "required": true,
              "defaultEnabled": true
            }
          }
        },
        "write": {
          "credentials": {
            "categories": {
              "ANY_ADDITIONAL_PROPERTY": {
                "required": true,
                "defaultEnabled": true
              }
            }
          },
          "personal": {
            "ANY_ADDITIONAL_PROPERTY": {
              "required": true,
              "defaultEnabled": true
            }
          }
        }
      },
      "name": "text",
      "subtitle": "text",
      "description": "text",
      "reasonForAccessing": "text",
      "image": "text",
      "uri": "text",
      "needsGuardianConsent": true,
      "redirectUrl": "text",
      "frontDoorBoostUri": "text",
      "createdAt": "text",
      "updatedAt": "text",
      "expiresAt": "text",
      "autoBoosts": [
        "text"
      ],
      "writers": [
        {
          "profileId": "text",
          "displayName": "",
          "shortBio": "",
          "bio": "",
          "did": "text",
          "isPrivate": true,
          "profileVisibility": "public",
          "showEmail": false,
          "allowConnectionRequests": "anyone",
          "email": "text",
          "image": "text",
          "heroImage": "text",
          "websiteLink": "text",
          "isServiceProfile": false,
          "type": "text",
          "notificationsWebhook": "https://example.com",
          "display": {
            "backgroundColor": "text",
            "backgroundImage": "text",
            "fadeBackgroundImage": true,
            "repeatBackgroundImage": true,
            "fontColor": "text",
            "accentColor": "text",
            "accentFontColor": "text",
            "idBackgroundImage": "text",
            "fadeIdBackgroundImage": true,
            "idBackgroundColor": "text",
            "repeatIdBackgroundImage": true
          },
          "highlightedCredentials": [
            "text"
          ],
          "role": "",
          "dob": "",
          "country": "text",
          "locale": "text",
          "approved": true
        }
      ]
    }
  ]
}

Get the data that has been consented for a contract

post

This route grabs all the data that has been consented for a contract

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
uristringRequired
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contract/data-for-contract
POST /api/consent-flow-contract/data-for-contract HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 188

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "uri": "text",
  "query": {
    "anonymize": true,
    "credentials": {
      "categories": {
        "ANY_ADDITIONAL_PROPERTY": true
      }
    },
    "personal": {
      "ANY_ADDITIONAL_PROPERTY": true
    }
  }
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "date": "text"
    }
  ]
}

Get the data that has been consented by a did

post

This route grabs all the data that has been consented by a did

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
didstringRequired
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contract/data-for-did
POST /api/consent-flow-contract/data-for-did HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 183

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "did": "text",
  "query": {
    "credentials": {
      "categories": {
        "ANY_ADDITIONAL_PROPERTY": true
      }
    },
    "personal": {
      "ANY_ADDITIONAL_PROPERTY": true
    },
    "id": "text"
  }
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "credentials": [
        {
          "category": "text",
          "uri": "text"
        }
      ],
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "date": "text",
      "contractUri": "text"
    }
  ]
}

Get the data that has been consented for all of your contracts

post

This route grabs all the data that has been consented for all of your contracts

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contract/data
POST /api/consent-flow-contract/data HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 175

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "query": {
    "anonymize": true,
    "credentials": {
      "categories": {
        "ANY_ADDITIONAL_PROPERTY": true
      }
    },
    "personal": {
      "ANY_ADDITIONAL_PROPERTY": true
    }
  }
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": [
            "text"
          ]
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "date": "text"
    }
  ]
}

Writes a boost credential to a did that has consented to a contract

post

Writes a boost credential to a did that has consented to a contract

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
didstringRequired
contractUristringRequired
boostUristringRequired
credentialany ofRequired
or
Responses
200

Successful response

application/json
stringOptional
post/consent-flow-contract/write
POST /api/consent-flow-contract/write HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 1254

{
  "did": "text",
  "contractUri": "text",
  "boostUri": "text",
  "credential": {
    "@context": [
      "text"
    ],
    "id": "text",
    "type": [
      "text"
    ],
    "issuer": "text",
    "credentialSubject": {
      "id": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "refreshService": {
      "id": "text",
      "type": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "credentialSchema": {
      "id": "text",
      "type": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "issuanceDate": "text",
    "expirationDate": "text",
    "credentialStatus": {
      "type": "text",
      "id": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "name": "text",
    "description": "text",
    "validFrom": "text",
    "validUntil": "text",
    "status": {
      "type": "text",
      "id": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "termsOfUse": {
      "type": "text",
      "id": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "evidence": {
      "id": "text",
      "type": [
        "text"
      ],
      "name": "text",
      "narrative": "text",
      "description": "text",
      "genre": "text",
      "audience": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "renderMethod": {
      "type": "text",
      "renderSuite": "text",
      "template": "text",
      "renderProperty": [
        "text"
      ],
      "outputPreference": {
        "mediaType": "text"
      }
    },
    "proof": {
      "type": "text",
      "created": "text",
      "challenge": "text",
      "domain": "text",
      "nonce": "text",
      "proofPurpose": "text",
      "verificationMethod": "text",
      "jws": "text",
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "ANY_ADDITIONAL_PROPERTY": "anything"
  }
}
text

Write credential through signing authority for a DID consented to a contract

post

Issues and sends a boost credential via a registered signing authority to a DID that has consented to a contract.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
didstringRequired
contractUristringRequired
boostUristringRequired
Responses
200

Successful response

application/json
stringOptional
post/consent-flow-contract/write/via-signing-authority
POST /api/consent-flow-contract/write/via-signing-authority HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 106

{
  "did": "text",
  "contractUri": "text",
  "boostUri": "text",
  "signingAuthority": {
    "name": "text",
    "endpoint": "text"
  }
}
text

Consent To Contract

post

Consents to a Contract with a hard set of terms

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
contractUristringRequired
expiresAtstringOptional
oneTimebooleanOptional
recipientTokenstringOptional
Responses
200

Successful response

application/json
termsUristringRequired
redirectUrlstringOptional
post/consent-flow-contract/consent
POST /api/consent-flow-contract/consent HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 462

{
  "terms": {
    "read": {
      "anonymize": true,
      "credentials": {
        "shareAll": true,
        "sharing": true,
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "sharing": true,
            "shared": [
              "text"
            ],
            "shareAll": true,
            "shareUntil": "text"
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      }
    },
    "write": {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": true
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": true
      }
    },
    "deniedWriters": [
      "text"
    ]
  },
  "contractUri": "text",
  "expiresAt": "text",
  "oneTime": true,
  "recipientToken": "text"
}
{
  "termsUri": "text",
  "redirectUrl": "text"
}

Gets Consented Contracts

post

Gets all consented contracts for a user

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contracts/consent
POST /api/consent-flow-contracts/consent HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 399

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "query": {
    "read": {
      "anonymize": true,
      "credentials": {
        "shareAll": true,
        "sharing": true,
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "sharing": true,
            "shared": [
              "text"
            ],
            "shareAll": true,
            "shareUntil": "text"
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      }
    },
    "write": {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": true
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": true
      }
    }
  }
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "expiresAt": "text",
      "oneTime": true,
      "terms": {
        "read": {
          "anonymize": true,
          "credentials": {
            "shareAll": true,
            "sharing": true,
            "categories": {
              "ANY_ADDITIONAL_PROPERTY": {
                "sharing": true,
                "shared": [
                  "text"
                ],
                "shareAll": true,
                "shareUntil": "text"
              }
            }
          },
          "personal": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          }
        },
        "write": {
          "credentials": {
            "categories": {
              "ANY_ADDITIONAL_PROPERTY": true
            }
          },
          "personal": {
            "ANY_ADDITIONAL_PROPERTY": true
          }
        },
        "deniedWriters": [
          "text"
        ]
      },
      "contract": {
        "contract": {
          "read": {
            "anonymize": true,
            "credentials": {
              "categories": {
                "ANY_ADDITIONAL_PROPERTY": {
                  "required": true,
                  "defaultEnabled": true
                }
              }
            },
            "personal": {
              "ANY_ADDITIONAL_PROPERTY": {
                "required": true,
                "defaultEnabled": true
              }
            }
          },
          "write": {
            "credentials": {
              "categories": {
                "ANY_ADDITIONAL_PROPERTY": {
                  "required": true,
                  "defaultEnabled": true
                }
              }
            },
            "personal": {
              "ANY_ADDITIONAL_PROPERTY": {
                "required": true,
                "defaultEnabled": true
              }
            }
          }
        },
        "owner": {
          "profileId": "text",
          "displayName": "",
          "shortBio": "",
          "bio": "",
          "did": "text",
          "isPrivate": true,
          "profileVisibility": "public",
          "showEmail": false,
          "allowConnectionRequests": "anyone",
          "email": "text",
          "image": "text",
          "heroImage": "text",
          "websiteLink": "text",
          "isServiceProfile": false,
          "type": "text",
          "notificationsWebhook": "https://example.com",
          "display": {
            "backgroundColor": "text",
            "backgroundImage": "text",
            "fadeBackgroundImage": true,
            "repeatBackgroundImage": true,
            "fontColor": "text",
            "accentColor": "text",
            "accentFontColor": "text",
            "idBackgroundImage": "text",
            "fadeIdBackgroundImage": true,
            "idBackgroundColor": "text",
            "repeatIdBackgroundImage": true
          },
          "highlightedCredentials": [
            "text"
          ],
          "role": "",
          "dob": "",
          "country": "text",
          "locale": "text",
          "approved": true
        },
        "name": "text",
        "subtitle": "text",
        "description": "text",
        "reasonForAccessing": "text",
        "image": "text",
        "uri": "text",
        "needsGuardianConsent": true,
        "redirectUrl": "text",
        "frontDoorBoostUri": "text",
        "createdAt": "text",
        "updatedAt": "text",
        "expiresAt": "text",
        "autoBoosts": [
          "text"
        ],
        "writers": [
          {
            "profileId": "text",
            "displayName": "",
            "shortBio": "",
            "bio": "",
            "did": "text",
            "isPrivate": true,
            "profileVisibility": "public",
            "showEmail": false,
            "allowConnectionRequests": "anyone",
            "email": "text",
            "image": "text",
            "heroImage": "text",
            "websiteLink": "text",
            "isServiceProfile": false,
            "type": "text",
            "notificationsWebhook": "https://example.com",
            "display": {
              "backgroundColor": "text",
              "backgroundImage": "text",
              "fadeBackgroundImage": true,
              "repeatBackgroundImage": true,
              "fontColor": "text",
              "accentColor": "text",
              "accentFontColor": "text",
              "idBackgroundImage": "text",
              "fadeIdBackgroundImage": true,
              "idBackgroundColor": "text",
              "repeatIdBackgroundImage": true
            },
            "highlightedCredentials": [
              "text"
            ],
            "role": "",
            "dob": "",
            "country": "text",
            "locale": "text",
            "approved": true
          }
        ]
      },
      "uri": "text",
      "consenter": {
        "profileId": "text",
        "displayName": "",
        "shortBio": "",
        "bio": "",
        "did": "text",
        "isPrivate": true,
        "profileVisibility": "public",
        "showEmail": false,
        "allowConnectionRequests": "anyone",
        "email": "text",
        "image": "text",
        "heroImage": "text",
        "websiteLink": "text",
        "isServiceProfile": false,
        "type": "text",
        "notificationsWebhook": "https://example.com",
        "display": {
          "backgroundColor": "text",
          "backgroundImage": "text",
          "fadeBackgroundImage": true,
          "repeatBackgroundImage": true,
          "fontColor": "text",
          "accentColor": "text",
          "accentFontColor": "text",
          "idBackgroundImage": "text",
          "fadeIdBackgroundImage": true,
          "idBackgroundColor": "text",
          "repeatIdBackgroundImage": true
        },
        "highlightedCredentials": [
          "text"
        ],
        "role": "",
        "dob": "",
        "country": "text",
        "locale": "text",
        "approved": true
      },
      "status": "live"
    }
  ]
}

Updates Contract Terms

post

Updates the terms for a consented contract

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
uristringRequired
expiresAtstringOptional
oneTimebooleanOptional
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contract/consent/update
POST /api/consent-flow-contract/consent/update HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 430

{
  "uri": "text",
  "terms": {
    "read": {
      "anonymize": true,
      "credentials": {
        "shareAll": true,
        "sharing": true,
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": {
            "sharing": true,
            "shared": [
              "text"
            ],
            "shareAll": true,
            "shareUntil": "text"
          }
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      }
    },
    "write": {
      "credentials": {
        "categories": {
          "ANY_ADDITIONAL_PROPERTY": true
        }
      },
      "personal": {
        "ANY_ADDITIONAL_PROPERTY": true
      }
    },
    "deniedWriters": [
      "text"
    ]
  },
  "expiresAt": "text",
  "oneTime": true
}
true

Delete credential references from all consent terms

post

Removes deleted credential URIs from any live consent terms that still reference them

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
deletedUrisstring[] · min: 1Required
Responses
200

Successful response

application/json
contractsUpdatednumberRequired
removedSharedUrisnumberRequired
post/consent-flow-contract/consent/prune-deleted-uris
POST /api/consent-flow-contract/consent/prune-deleted-uris HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 24

{
  "deletedUris": [
    "text"
  ]
}
{
  "contractsUpdated": 1,
  "removedSharedUris": 1
}
delete

Withdraws consent by deleting Contract Terms

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
uristringRequired
Responses
200

Successful response

application/json
booleanOptional
delete/consent-flow-contract/consent/withdraw
DELETE /api/consent-flow-contract/consent/withdraw?uri=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
true

Gets Transaction History

post

Gets the transaction history for a set of Consent Flow Contract Terms

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
uristringRequired
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contract/consent/history
POST /api/consent-flow-contract/consent/history HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 505

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "uri": "text",
  "query": {
    "terms": {
      "read": {
        "anonymize": true,
        "credentials": {
          "shareAll": true,
          "sharing": true,
          "categories": {
            "ANY_ADDITIONAL_PROPERTY": {
              "sharing": true,
              "shared": [
                "text"
              ],
              "shareAll": true,
              "shareUntil": "text"
            }
          }
        },
        "personal": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        }
      },
      "write": {
        "credentials": {
          "categories": {
            "ANY_ADDITIONAL_PROPERTY": true
          }
        },
        "personal": {
          "ANY_ADDITIONAL_PROPERTY": true
        }
      }
    },
    "action": "consent",
    "date": {
      "$gt": "text"
    },
    "expiresAt": {
      "$gt": "text"
    },
    "oneTime": true
  }
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "expiresAt": "text",
      "oneTime": true,
      "terms": {
        "read": {
          "anonymize": true,
          "credentials": {
            "shareAll": true,
            "sharing": true,
            "categories": {
              "ANY_ADDITIONAL_PROPERTY": {
                "sharing": true,
                "shared": [
                  "text"
                ],
                "shareAll": true,
                "shareUntil": "text"
              }
            }
          },
          "personal": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          }
        },
        "write": {
          "credentials": {
            "categories": {
              "ANY_ADDITIONAL_PROPERTY": true
            }
          },
          "personal": {
            "ANY_ADDITIONAL_PROPERTY": true
          }
        },
        "deniedWriters": [
          "text"
        ]
      },
      "id": "text",
      "action": "consent",
      "date": "text",
      "uris": [
        "text"
      ]
    }
  ]
}
get

Checks if a profile has consented to the specified contract

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
uristringRequired
profileIdstringRequired
Responses
200

Successful response

application/json
booleanOptional
get/consent-flow-contract/verify
GET /api/consent-flow-contract/verify?uri=text&profileId=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
true

Sync credentials to a contract

post

Syncs credentials to a contract that the profile has consented to

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
termsUristringRequired
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contract/sync
POST /api/consent-flow-contract/sync HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "termsUri": "text",
  "categories": {
    "ANY_ADDITIONAL_PROPERTY": [
      "text"
    ]
  }
}
true

Get credentials issued via a contract

post

Gets all credentials that were issued via a contract

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
termsUristringRequired
includeReceivedbooleanOptionalDefault: true
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contract/credentials
POST /api/consent-flow-contract/credentials HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 83

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "termsUri": "text",
  "includeReceived": true
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "credentialUri": "text",
      "termsUri": "text",
      "contractUri": "text",
      "boostUri": "text",
      "category": "text",
      "date": "text"
    }
  ]
}

Get all credentials written to any terms

post

Gets all credentials that were written to any terms owned by this profile

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
limitnumberOptionalDefault: 25
cursorstringOptional
sortstringOptional
includeReceivedbooleanOptionalDefault: false
Responses
200

Successful response

application/json
cursorstringOptional
hasMorebooleanRequired
post/consent-flow-contracts/credentials
POST /api/consent-flow-contracts/credentials HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 66

{
  "limit": 25,
  "cursor": "text",
  "sort": "text",
  "includeReceived": false
}
{
  "cursor": "text",
  "hasMore": true,
  "records": [
    {
      "credentialUri": "text",
      "termsUri": "text",
      "contractUri": "text",
      "boostUri": "text",
      "category": "text",
      "date": "text"
    }
  ]
}

Add autoboosts to a contract

post

Adds one or more autoboost configurations to an existing consent flow contract. The caller must be the contract owner or a designated writer. The signing authority for each autoboost must be registered to the caller.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
contractUristringRequired
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contracts/autoboosts/add
POST /api/consent-flow-contracts/autoboosts/add HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 110

{
  "contractUri": "text",
  "autoboosts": [
    {
      "boostUri": "text",
      "signingAuthority": {
        "endpoint": "text",
        "name": "text"
      }
    }
  ]
}
true

Remove autoboosts from a contract

post

Removes one or more autoboosts from an existing consent flow contract, identified by their boost URIs. The caller must be the contract owner or a designated writer.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
contractUristringRequired
boostUrisstring[]Required
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contracts/autoboosts/remove
POST /api/consent-flow-contracts/autoboosts/remove HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 43

{
  "contractUri": "text",
  "boostUris": [
    "text"
  ]
}
true

AI Insights, consent flow notifcation request

post

Sends the targeted user an AI insights consent flow request via a notification

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
contractUristringRequired
targetProfileIdstringRequired
shareLinkstringRequired
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contracts/ai-insights/request
POST /api/consent-flow-contracts/ai-insights/request HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 66

{
  "contractUri": "text",
  "targetProfileId": "text",
  "shareLink": "text"
}
true

AI Insights, consent flow share-notifcation request

post

Sends the targeted user an AI insights share notification

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
childProfileIdstringOptional
targetProfileIdstringRequired
shareLinkstringRequired
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contracts/ai-insights/share-request
POST /api/consent-flow-contracts/ai-insights/share-request HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "childProfileId": "text",
  "targetProfileId": "text",
  "shareLink": "text"
}
true
get

Gets a list of users and their request statuses for a given contract.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
contractUristringRequired
Responses
200

Successful response

application/json
statusstring · enum · nullableRequiredPossible values:
readStatusstring · enum · nullableOptionalPossible values:
get/consent-flow-contracts/sent-requests
GET /api/consent-flow-contracts/sent-requests?contractUri=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
  {
    "profile": {
      "profileId": "text",
      "displayName": "",
      "shortBio": "",
      "bio": "",
      "did": "text",
      "isPrivate": true,
      "profileVisibility": "public",
      "showEmail": false,
      "allowConnectionRequests": "anyone",
      "email": "text",
      "image": "text",
      "heroImage": "text",
      "websiteLink": "text",
      "isServiceProfile": false,
      "type": "text",
      "notificationsWebhook": "https://example.com",
      "display": {
        "backgroundColor": "text",
        "backgroundImage": "text",
        "fadeBackgroundImage": true,
        "repeatBackgroundImage": true,
        "fontColor": "text",
        "accentColor": "text",
        "accentFontColor": "text",
        "idBackgroundImage": "text",
        "fadeIdBackgroundImage": true,
        "idBackgroundColor": "text",
        "repeatIdBackgroundImage": true
      },
      "highlightedCredentials": [
        "text"
      ],
      "role": "",
      "dob": "",
      "country": "text",
      "locale": "text",
      "approved": true
    },
    "status": "pending",
    "readStatus": "unseen"
  }
]
get

Returns the request status and read status for a given profile in a specific contract.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
contractIdstring · nullableOptional
contractUristring · nullableOptional
targetProfileIdstringRequired
Responses
200

Successful response

application/json
statusstring · enum · nullableRequiredPossible values:
readStatusstring · enum · nullableOptionalPossible values:
get/consent-flow-contracts/request-status
GET /api/consent-flow-contracts/request-status?targetProfileId=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "profile": {
    "profileId": "text",
    "displayName": "",
    "shortBio": "",
    "bio": "",
    "did": "text",
    "isPrivate": true,
    "profileVisibility": "public",
    "showEmail": false,
    "allowConnectionRequests": "anyone",
    "email": "text",
    "image": "text",
    "heroImage": "text",
    "websiteLink": "text",
    "isServiceProfile": false,
    "type": "text",
    "notificationsWebhook": "https://example.com",
    "display": {
      "backgroundColor": "text",
      "backgroundImage": "text",
      "fadeBackgroundImage": true,
      "repeatBackgroundImage": true,
      "fontColor": "text",
      "accentColor": "text",
      "accentFontColor": "text",
      "idBackgroundImage": "text",
      "fadeIdBackgroundImage": true,
      "idBackgroundColor": "text",
      "repeatIdBackgroundImage": true
    },
    "highlightedCredentials": [
      "text"
    ],
    "role": "",
    "dob": "",
    "country": "text",
    "locale": "text",
    "approved": true
  },
  "status": "pending",
  "readStatus": "unseen"
}

Marks a contract request as seen

post

Updates the read status of a contract request to "seen" for the specified target profile. Only contract writers are authorized to perform this action.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
contractUristringRequired
targetProfileIdstringRequired
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contracts/mark-request-as-seen
POST /api/consent-flow-contracts/mark-request-as-seen HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 47

{
  "contractUri": "text",
  "targetProfileId": "text"
}
true

Cancels/removes a contract request

post

Removes a REQUESTED_FOR relationship, cancelling the request sent to the specified target profile. Only contract writers are authorized to perform this action.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
contractUristringRequired
targetProfileIdstringRequired
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contracts/cancel-request
POST /api/consent-flow-contracts/cancel-request HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 47

{
  "contractUri": "text",
  "targetProfileId": "text"
}
true
get

Gets all contract requests from all contracts for a specified target profile. Users can query their own requests.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
targetProfileIdstringRequired
Responses
200

Successful response

application/json
statusstring · enum · nullableRequiredPossible values:
readStatusstring · enum · nullableOptionalPossible values:
get/consent-flow-contracts/all-requests-for-profile
GET /api/consent-flow-contracts/all-requests-for-profile?targetProfileId=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
  {
    "contract": {
      "read": {
        "anonymize": true,
        "credentials": {
          "categories": {
            "ANY_ADDITIONAL_PROPERTY": {
              "required": true,
              "defaultEnabled": true
            }
          }
        },
        "personal": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true,
            "defaultEnabled": true
          }
        }
      },
      "write": {
        "credentials": {
          "categories": {
            "ANY_ADDITIONAL_PROPERTY": {
              "required": true,
              "defaultEnabled": true
            }
          }
        },
        "personal": {
          "ANY_ADDITIONAL_PROPERTY": {
            "required": true,
            "defaultEnabled": true
          }
        }
      },
      "uri": "text"
    },
    "profile": {
      "profileId": "text",
      "displayName": "",
      "shortBio": "",
      "bio": "",
      "did": "text",
      "isPrivate": true,
      "profileVisibility": "public",
      "showEmail": false,
      "allowConnectionRequests": "anyone",
      "email": "text",
      "image": "text",
      "heroImage": "text",
      "websiteLink": "text",
      "isServiceProfile": false,
      "type": "text",
      "notificationsWebhook": "https://example.com",
      "display": {
        "backgroundColor": "text",
        "backgroundImage": "text",
        "fadeBackgroundImage": true,
        "repeatBackgroundImage": true,
        "fontColor": "text",
        "accentColor": "text",
        "accentFontColor": "text",
        "idBackgroundImage": "text",
        "fadeIdBackgroundImage": true,
        "idBackgroundColor": "text",
        "repeatIdBackgroundImage": true
      },
      "highlightedCredentials": [
        "text"
      ],
      "role": "",
      "dob": "",
      "country": "text",
      "locale": "text",
      "approved": true
    },
    "status": "pending",
    "readStatus": "unseen"
  }
]
get

Gets profiles with REQUESTED_FOR relationships targeting the current user, including request status.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
targetProfileIdstringRequired
Responses
200

Successful response

application/json
statusstring · enum · nullableRequiredPossible values:
readStatusstring · enum · nullableOptionalPossible values:
contractUristringOptional
get/consent-flow-contracts/shared-insights-requests-for-profile
GET /api/consent-flow-contracts/shared-insights-requests-for-profile?targetProfileId=text HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
  {
    "profile": {
      "profileId": "text",
      "displayName": "",
      "shortBio": "",
      "bio": "",
      "did": "text",
      "isPrivate": true,
      "profileVisibility": "public",
      "showEmail": false,
      "allowConnectionRequests": "anyone",
      "email": "text",
      "image": "text",
      "heroImage": "text",
      "websiteLink": "text",
      "isServiceProfile": false,
      "type": "text",
      "notificationsWebhook": "https://example.com",
      "display": {
        "backgroundColor": "text",
        "backgroundImage": "text",
        "fadeBackgroundImage": true,
        "repeatBackgroundImage": true,
        "fontColor": "text",
        "accentColor": "text",
        "accentFontColor": "text",
        "idBackgroundImage": "text",
        "fadeIdBackgroundImage": true,
        "idBackgroundColor": "text",
        "repeatIdBackgroundImage": true
      },
      "highlightedCredentials": [
        "text"
      ],
      "role": "",
      "dob": "",
      "country": "text",
      "locale": "text",
      "approved": true
    },
    "status": "pending",
    "readStatus": "unseen",
    "contractUri": "text"
  }
]

Forward a contract request

post

Forwards a contract request to another profile

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
parentProfileIdstringRequired
targetProfileIdstringRequired
contractUristringOptional
Responses
200

Successful response

application/json
booleanOptional
post/consent-flow-contracts/forward-request-to-profile
POST /api/consent-flow-contracts/forward-request-to-profile HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 72

{
  "parentProfileId": "text",
  "targetProfileId": "text",
  "contractUri": "text"
}
true

Last updated

Was this helpful?