document API