vCard, also known as VCF ("Virtual Contact File"), is a file format standard for electronic business cards. vCards can be attached to e-mail messages, sent via Multimedia Messaging Service (MMS), on the World Wide Web, instant messaging, NFC or through QR code. They can contain name and address information, phone numbers, e-mail addresses, URLs, logos, photographs, and audio clips.

vCard is used as a data interchange format in smartphone contacts, personal digital assistants (PDAs), personal information managers (PIMs) and customer relationship management systems (CRMs). To accomplish these data interchange applications, other "vCard variants" have been used and proposed as "variant standards", each for its specific niche: XML representation, JSON representation, or web pages.

Overview

The standard Internet media type (MIME type) for a vCard has varied with each version of the specification.

vCards can be embedded in web pages.

RDFa with the vCard Ontology can be used in HTML and various XML-family languages, e.g. SVG, MathML.

jCard, "The JSON Format for vCard" is a standard proposal of 2014 in . RFC 7095 describes a lossless method of representing vCard instances in JSON, using arrays of sequence-dependent tag–value pairs. jCard has been incorporated into several other protocols, including RDAP, the Protocol to Access White Space Databases (PAWS, described in ), and SIP, which (via ) uses it to provide contact information for the operator of an intermediary which has rejected a call.

hCard is a microformat that allows a vCard to be embedded inside an HTML page. It makes use of CSS class names to identify each vCard property. Normal HTML markup and CSS styling can be used alongside the hCard class names without affecting the webpage's ability to be parsed by a hCard parser. h-card is the microformats2 update to hCard.

MeCard is a variation of vCard made by NTT DoCoMo for smartphones using QR codes. It uses a very similar syntax, but in a more consolidated way as the storage space on QR codes is limited. It's also limited in the amount of data that can be stored, not just by the standard but the size of QR codes.

Example

An example of a simple vCard (from RFC 6350 of August, 2011, abbreviated):

BEGIN:VCARD

VERSION:4.0

FN:Simon Perreault

N:Perreault;Simon;;;ing. jr,M.Sc.

BDAY:--0203

GENDER:M

EMAIL;TYPE=work:simon.perreault@viagenie.ca

END:VCARD

This is the vCard for "Simon Perreault" (the author of RFC 6350), with his birthday (omitting the year), email address and gender.

Properties

vCard defines the following property types.

All vCards begin with <code>BEGIN:VCARD</code> and end with <code>END:VCARD</code>. All vCards must contain the <code>VERSION</code> property, which specifies the vCard version. <code>VERSION</code> must come immediately after <code>BEGIN</code>, except in the vCard 2.1 and 3.0 standards, which allows it to be anywhere in the vCard. Otherwise, properties can be defined in any order.

{|class="wikitable sortable"

|- style="vertical-align:top;"

! rowspan="2" width="50" | Name

! colspan="3" | Property presence

! rowspan="2" | Description

! rowspan="2" | Example

|-

! width="20" | 2.1

! width="20" | 3.0

! width="20" | 4.0

|-

| <code>ADR</code> || || || || A structured representation of the physical delivery address for the vCard object. || <code>ADR;TYPE=home:;;123 Main St.;Springfield;IL;12345;USA</code>

|-

| <code>AGENT</code> || || || || Information about another person who will act on behalf of the vCard object. Typically this would be an area administrator, assistant, or secretary for the individual. Can be either a URL or an embedded vCard. || <code>AGENT:<nowiki>http://mi6.gov.uk/007</nowiki></code>

|-

| <code>ANNIVERSARY</code> || || || || Defines the person's anniversary. || <code>ANNIVERSARY:19901021</code>

|-

| <code>BDAY</code> || || || || Date of birth of the individual associated with the vCard. || <code>BDAY:19700310</code>

|-

| <code>BEGIN</code> || || || || All vCards must start with this property. || <code>BEGIN:VCARD</code>

|-

| <code>CALADRURI</code> || || || || A URL to use for sending a scheduling request to the person's calendar. || <code>CALADRURI:<nowiki>http://example.com/calendar/jdoe</nowiki></code>

|-

| <code>CALURI</code> || || || || A URL to the person's calendar. || <code>CALURI:<nowiki>http://example.com/calendar/jdoe</nowiki></code>

|-

| <code>CATEGORIES</code> || || || || A list of "tags" that can be used to describe the object represented by this vCard. || <code>CATEGORIES:swimmer,biker</code>

|-

| <code>CLASS</code> || || || || Describes the sensitivity of the information in the vCard. || <code>CLASS:public</code>

|-

| <code>CLIENTPIDMAP</code> || || || || Used for synchronizing different revisions of the same vCard. || <code><nowiki>CLIENTPIDMAP:1;urn:uuid:3df403f4-5924-4bb7-b077-3c711d9eb34b</nowiki></code>

|-

| <code>EMAIL</code> || || || || The address for electronic mail communication with the vCard object. || <code>EMAIL:johndoe@hotmail.com</code>

|-

| <code>END</code> || || || || All vCards must end with this property. || <code>END:VCARD</code>

|-

| <code>FBURL</code> || || || || Defines a URL that shows when the person is "free" or "busy" on their calendar. || <code>FBURL:<nowiki>http://example.com/fb/jdoe</nowiki></code>

|-

| <code>FN</code> || || || || The formatted name string associated with the vCard object. || <code>FN:Dr. John Doe</code>

|-

| <code>GENDER</code> || || || || Defines the person's gender. || <code>GENDER:F</code>

|-

| <code>GEO</code> || || || || Specifies a latitude and longitude. || 2.1, 3.0: <code>GEO:39.95;-75.1667</code><br />4.0: <code>[geo:39.95,-75.1667 GEO:geo:39.95,-75.1667]</code>

|-

| <code>IMPP</code> || || || || Defines an instant messenger handle.

This property was introduced in a separate RFC when the latest vCard version was 3.0. Therefore, 3.0 vCards might use this property without otherwise declaring it.

| <code>IMPP:aim:johndoe@aol.com</code>

|-

| <code>KEY</code> || || || || The public encryption key associated with the vCard object. It may point to an external URL, may be plain text, or may be embedded in the vCard as a Base64 encoded block of text. || style="font-size:0.8em" | 2.1: <code>KEY;PGP:<nowiki>http://example.com/key.pgp</nowiki></code><br />2.1: <code>KEY;PGP;ENCODING=BASE64:[base64-data]</code><br />3.0: <code>KEY;TYPE=PGP:<nowiki>http://example.com/key.pgp</nowiki></code><br />3.0: <code>KEY;TYPE=PGP;ENCODING=b:[base64-data]</code><br />4.0: <code>KEY;MEDIATYPE=application/pgp-keys:<nowiki>http://example.com/key.pgp</nowiki></code><br />4.0: <code>KEY:data:application/pgp-keys;base64,[base64-data]</code>

|-

| <code>KIND</code> || || || || Defines the type of entity that this vCard represents: 'application', 'individual', 'group', 'location' or 'organization'; 'x-*' values may be used for experimental purposes. || <code>KIND:individual</code>

|-

| <code>LABEL</code> || || || || Represents the actual text that should be put on the mailing label when delivering a physical package to the person/object associated with the vCard (related to the <code>ADR</code> property).

Not supported in version 4.0. Instead, this information is stored in the <code>LABEL</code> parameter of the <code>ADR</code> property. Example: <code>ADR;TYPE=home;LABEL="123 Main St\nNew York, NY 12345":;;123 Main St;New York;NY;12345;USA</code>

| <code>LABEL;TYPE=HOME:123 Main St.\nSpringfield, IL 12345\nUSA</code>

|-

| <code>LANG</code> || || <code>N:Doe;John;;Dr;</code>

|-

| <code>NAME</code> || || || || Provides a textual representation of the <code>SOURCE</code> property. ||

|-

| <code>NICKNAME</code> || || || || One or more descriptive/familiar names for the object represented by this vCard. || <code>NICKNAME:Jon,Johnny</code>

|-

| <code>NOTE</code> || || || || Specifies supplemental information or a comment that is associated with the vCard. || <code>NOTE:I am proficient in Tiger-Crane Style,\nand I am more than proficient in the exquisite art of the Samurai sword.</code>

|-

| <code>ORG</code> || || || || The name and optionally the unit(s) of the organization associated with the vCard object. This property is based on the X.520 Organization Name attribute and the X.520 Organization Unit attribute. || <code>ORG:Google;GMail Team;Spam Detection Squad</code>

|-

| <code>PHOTO</code> || || || || An image or photograph of the individual associated with the vCard. It may point to an external URL or may be embedded in the vCard as a Base64 encoded block of text. || style="font-size:0.8em" | 2.1: <code>PHOTO;JPEG:<nowiki>http://example.com/photo.jpg</nowiki></code><br />2.1: <code>PHOTO;JPEG;ENCODING=BASE64:[base64-data]</code><br />3.0: <code>PHOTO;TYPE=JPEG;VALUE=URI:<nowiki>http://example.com/photo.jpg</nowiki></code><br />3.0: <code>PHOTO;TYPE=JPEG;ENCODING=b:[base64-data]</code><br />4.0: <code>PHOTO;MEDIATYPE=image/jpeg:<nowiki>http://example.com/photo.jpg</nowiki></code><br />4.0: <code>PHOTO:data:image/jpeg;base64,[base64-data]</code>

|-

| <code>PRODID</code> || || || || The identifier for the product that created the vCard object. || <code>PRODID:-//ONLINE DIRECTORY//NONSGML Version 1//EN</code>

|-

| <code>PROFILE</code> || || || || States that the vCard is a vCard. || <code>PROFILE:VCARD</code>

|-

| <code>RELATED</code> || || || || Another entity that the person is related to. Acceptable values include:|| <code><nowiki>RELATED;TYPE=friend:urn:uuid:03a0e51f-d1aa-4385-8a53-e29025acd8af</nowiki></code>

|-

| <code>REV</code> || || || || A timestamp for the last time the vCard was updated. || <code>REV:20121201T134211Z</code>

|-

| <code>ROLE</code> || || || || The role, occupation, or business category of the vCard object within an organization. || <code>ROLE:Executive</code>

|-

| <code>SORT-STRING</code> || || || || Defines a string that should be used when an application sorts this vCard in some way.

Not supported in version 4.0. Instead, this information is stored in the <code>SORT-AS</code> parameter of the <code>N</code> and/or <code>ORG</code> properties.

| <code>SORT-STRING:Doe</code>

|-

| <code>SOUND</code> || || || || By default, if this property is not grouped with other properties it specifies the pronunciation of the <code>FN</code> property of the vCard object. It may point to an external URL or may be embedded in the vCard as a Base64 encoded block of text. || style="font-size:0.8em" | 2.1: <code>SOUND;OGG:<nowiki>http://example.com/sound.ogg</nowiki></code><br />2.1: <code>SOUND;OGG;ENCODING=BASE64:[base64-data]</code><br />3.0: <code>SOUND;TYPE=OGG:<nowiki>http://example.com/sound.ogg</nowiki></code><br />3.0: <code>SOUND;TYPE=OGG;ENCODING=b:[base64-data]</code><br />4.0: <code>SOUND;MEDIATYPE=audio/ogg:<nowiki>http://example.com/sound.ogg</nowiki></code><br />4.0: <code>SOUND:data:audio/ogg;base64,[base64-data]</code>

|-

| <code>SOURCE</code> || || || || A URL that can be used to get the latest version of this vCard. || <code>SOURCE:<nowiki>http://johndoe.com/vcard.vcf</nowiki></code>

|-

| <code>TEL</code> || || || || The canonical number string for a telephone number for telephony communication with the vCard object. || <code>TEL;TYPE=cell:(123) 555-5832</code>

|-

| <code>TITLE</code> || || || || Specifies the job title, functional position or function of the individual associated with the vCard object within an organization. || <code>TITLE:V.P. Research and Development</code>

|-

| <code>TZ</code> || || || || The time zone of the vCard object. || 2.1, 3.0: <code>TZ:-0500</code><br />4.0: <code>TZ:America/New_York</code>

|-

| <code>UID</code> || || || || Specifies a value that represents a persistent, globally unique identifier associated with the object. || <code><nowiki>UID:urn:uuid:da418720-3754-4631-a169-db89a02b831b</nowiki></code>

|-

| <code>URL</code> || || || || A URL pointing to a website that represents the person in some way. Default = "homepage" || <code>URL;TITLE:<nowiki>https://www.johndoe.com</nowiki></code>

|-

| <code>VERSION</code> || || || || The version of the vCard specification. In version 4.0, this must come right after the <code>BEGIN</code> property. || <code>VERSION:3.0</code>

|-

| <code>XML</code> || || || || Any XML data that is attached to the vCard. This is used if the vCard was encoded in XML (xCard standard) and the XML document contained elements which are not part of the xCard standard. || <code>XML:&lt;b&gt;Not an xCard XML element&lt;/b&gt;</code>

|-

|}

See also

  • CardDAV
  • FOAF (ontology)
  • Geo URI scheme

References

  • vCard 4.0 at its developer CalConnect
  • describing the vCard format version 4
  • RFC 2426 describing the vCard format version 3
  • vCard and vCalendar (old versions) from the Internet Mail Consortium in the Internet Archive