Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]

Part I API Documentation

1 Introduction

The Secret Service API allows client applications to store secrets securely in a service running in the user's login session.

2 Secrets

A secret is something an application wishes to store securely. A good example is a password that an application needs to save and use at a later date.

3 Collection and Items

Each secret is stored together with lookup attributes and a label. These together form an item.

4 Aliases

Collections may be accessed via well known aliases. For example an alias called default tells applications which is the default collection to store secrets.

5 Lookup Attributes

Attributes can and should be stored with a secret to facilitate lookup of the secret at a later date.

6 Sessions

A session is established between a client application and a service. A session is used to transfer secrets between the client application and the service.

7 Transfer of Secrets

To access or store secrets, use the GetSecret(), SetSecret() methods on the item interface, or the GetSecrets(), method on the service interface.

8 Locking and Unlocking

Some items and/or collections may be marked as locked by the service. The secrets of locked items cannot be accessed. Additionally, locked items or collections cannot be modified by the client application.

9 Prompts and Prompting

In order to complete various operations, such as unlocking a collection, the service may need to prompt the user for additional information, such as a master password.

10 What's not included in the API

A service may implement additional D-Bus interfaces for further capabilities not included in this specification. Password management applications or other narrowly focused tools should make use of these when necessary.

11 Notes for Service Implementors

[TODO: complete]