diff --git a/relation_endpoint.module b/relation_endpoint.module
index 13d633f..55c81d6 100644
--- a/relation_endpoint.module
+++ b/relation_endpoint.module
@@ -25,6 +25,9 @@ function relation_endpoint_field_info() {
  * Implements hook_field_validate().
  */
 function relation_endpoint_field_validate($entity_type, $entity, $field, $instance, $langcode, $items, &$errors) {
+  if (empty($entity_type) && empty($entity)) {
+    return;
+  }
   $relation_type = relation_type_load($entity->relation_type);
   // Check that relation_type exists.
   if (!$relation_type) {
diff --git a/tests/relation.test b/tests/relation.test
index c3fdc33..e1f6495 100644
--- a/tests/relation.test
+++ b/tests/relation.test
@@ -389,6 +389,18 @@ class RelationAPITestCase extends RelationTestCase {
   }
 
   /**
+   * Tests endpoint field settings.
+   */
+  function testRelationEndpointsField() {
+    $this->drupalGet('admin/structure/relation/manage/symmetric/fields/endpoints');
+    $post = array(
+      "instance[label]" => 'endpoints new label'
+    );
+    $this->drupalPost(NULL, $post, t('Save settings'));
+    $this->assertText(t('Saved endpoints new label configuration.'));
+  }
+
+  /**
    * Tests importing method.
    */
   function testRelationImport() {
