---
# System prepended metadata

title: Provider Level Operations

---

# Provider Level Operations

## Organizations
```
CreateOrganization()
ListOrganizations
GetOrganization
RemoveOrganizationFromEcosystem
```

```json=
AgentController:
{
  id: string
  name: string
  
}

```

## Credential Templates
```
createCredentialTemplate(CredentialTemplate template)

```
```
CredentialTemplate 
{
  Manifest: {...}
  Schema: {..}
}
```

```
Manifest: 
{
  

}

```
## Proof Templates

## Registry

## Analytics


# Issuance
https://w3c-ccg.github.io/vc-http-api/#/Issuer/issueCredential

https://learn.mattr.global/api-ref#operation/createCredential

https://docs.trinsic.id/reference#createcredential

## Operations

```javascript
createCredential
sendCredential
revokeCredential
```

## Models
```
{
  "credential": {
    "@context": [
      "https://www.w3.org/2018/credentials/v1",
      "https://www.w3.org/2018/credentials/examples/v1"
    ],
    "id": "http://example.gov/credentials/3732",
    "type": [
      "VerifiableCredential",
      "UniversityDegreeCredential"
    ],
    "issuer": "did:example:123",
    "issuanceDate": "2020-03-16T22:37:26.544Z",
    "credentialSubject": {
      "id": "did:example:123",
      "degree": {
        "type": "BachelorDegree",
        "name": "Bachelor of Science and Arts"
      }
    }
  },
  "options": {
    "verificationMethod": "did:example:123#z6MksHh7qHWvybLg5QTPPdG2DgEjjduBDArV9EF9mRiRzMBN",
    "proofPurpose": "assertionMethod",
    "created": "2020-04-02T18:48:36Z",
    "domain": "example.com",
    "challenge": "d436f0c8-fbd9-4e48-bbb2-55fc5d0920a8"
  }
}
```


# Verifier
https://w3c-ccg.github.io/vc-http-api/#/Verifier/verifyPresentation

https://identity.foundation/presentation-exchange/

## Operations
*verifyPresentation*
*createPresentationDefinition*


## Models
```
VerifiablePresentationRequest {
  "verifiablePresentation": {
    "@context": [
      "https://www.w3.org/2018/credentials/v1",
      "https://www.w3.org/2018/credentials/examples/v1"
    ],
    "holder": "did:example:123",
    "type": "VerifiablePresentation",
    "verifiableCredential": [
      {
        "@context": [
          "https://www.w3.org/2018/credentials/v1",
          "https://www.w3.org/2018/credentials/examples/v1"
        ]
      },
      {
        "id": "http://example.gov/credentials/3732"
      },
      {
        "type": [
          "VerifiableCredential",
          "UniversityDegreeCredential"
        ]
      },
      {
        "issuer": "did:example:123"
      },
      {
        "issuanceDate": "2020-03-16T22:37:26.544Z"
      },
      {
        "credentialSubject": {
          "id": "did:example:123",
          "degree": {
            "type": "BachelorDegree",
            "name": "Bachelor of Science and Arts"
          }
        }
      },
      {
        "proof": {
          "type": "Ed25519Signature2018",
          "created": "2020-04-02T18:28:08Z",
          "verificationMethod": "did:example:123#z6MksHh7qHWvybLg5QTPPdG2DgEjjduBDArV9EF9mRiRzMBN",
          "proofPurpose": "assertionMethod",
          "jws": "eyJhbGciOiJFZERTQSIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..YtqjEYnFENT7fNW-COD0HAACxeuQxPKAmp4nIl8jYAu__6IH2FpSxv81w-l5PvE1og50tS9tH8WyXMlXyo45CA"
        }
      }
    ],
    "proof": {
      "type": "Ed25519Signature2018",
      "created": "2020-04-02T18:28:08Z",
      "verificationMethod": "did:example:123#z6MksHh7qHWvybLg5QTPPdG2DgEjjduBDArV9EF9mRiRzMBN",
      "proofPurpose": "assertionMethod",
      "jws": "eyJhbGciOiJFZERTQSIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..YtqjEYnFENT7fNW-COD0HAACxeuQxPKAmp4nIl8jYAu__6IH2FpSxv81w-l5PvE1og50tS9tH8WyXMlXyo45CA"
    }
  },
  "options": {
    "verificationMethod": "did:example:123#z6MksHh7qHWvybLg5QTPPdG2DgEjjduBDArV9EF9mRiRzMBN",
    "proofPurpose": "assertionMethod",
    "created": "2020-04-02T18:48:36Z",
    "domain": "example.com",
    "challenge": "d436f0c8-fbd9-4e48-bbb2-55fc5d0920a8"
  }
}
```

## Scan QR Code

# Credential Store
## Models
```
Credential: 
{
  state: CredentialState {issued, revoked}
  @context: [..]
  subjectId: 
  issuer: {..}
  template: {..}
  claims: {..}
}

CredentialTemplate: 
{
  
}
```
## Operations
```
getCredential
listCredentials
deleteCredential
generateProof
verifyProof

```
## Embed in website


<hr/>

# Story
## I set up an ecosystem
*I can use the cli to set up my ecosystem. I'll need to follow some steps,*
### Create a credential template

#### Choose a template 

```
name?
attributes?

primary color
secondary color

t credential create --def=asdf --demo
```
*find the list of supported schemas and who is using them. search based on use case, credential type, etc*
I can do quick search on schema.org for what I'm looking for. I can generate a credential very quickly

- see who else is currently using the same schemas
- see the attributes 
#### Customize template
- add any custom attributes if needed.
- Tweak the styling 
### Create Issuer Organization(s)
#### Invite admins

#### linkOrganizationToTemplate
### Create Registry
A registry is a list of public organizations and credential templates that can be trusted by a verifier

#### Publish Registry on trinsic
A registry can be published optionally on trinsic, their own website, or on ION.

## My issuer issues a credential
###  createCredential
inputs the values to create a w3c verifiable credential
### sendCredential
can send a credential to a DID, sms, email. can use QR code, landing page, etc. 

## I verify a credential from a holder
### Generate Definition
I use a presentation definition

### Submit Proof
I submit a proof that includes a definition

## I manage the credentials in my wallet

### ListCredentials

### GetCredential

### DeleteCredential

### *ProposeCredential

### GenerateProof





