Declarative api