add resource interface