ZfApi


Click here for a complete list of operations.

LoadPhoto

Loads the specified photo. More...

Test

To test the operation using the HTTP POST protocol, click the 'Invoke' button.
Parameter Value
photoId:
level:

SOAP 1.1

The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.

POST /api/1.6/zfapi.asmx HTTP/1.1
Host: www.zenfolio.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://www.zenfolio.com/api/1.6/LoadPhoto"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <LoadPhoto xmlns="http://www.zenfolio.com/api/1.6">
      <photoId>int</photoId>
      <level>Level1 or Level2 or Full</level>
    </LoadPhoto>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <LoadPhotoResponse xmlns="http://www.zenfolio.com/api/1.6">
      <LoadPhotoResult>
        <Id>int</Id>
        <Width>unsignedInt</Width>
        <Height>unsignedInt</Height>
        <Sequence>string</Sequence>
        <AccessDescriptor>
          <RealmId>int</RealmId>
          <AccessType>Private or UserList or Password or Public</AccessType>
          <IsDerived>boolean</IsDerived>
          <AccessMask>ProtectAll or NoCollections or None or NoPrivateSearch or NoPublicSearch or NoRecentList or HideDateCreated or HideDateModified or HideDateTaken or ProtectExif or ProtectExtraLarge or ProtectLarge or ProtectMedium or HideMetaData or ProtectOriginals or HideUserStats or HideVisits or NoPublicGuestbookPosts or NoPrivateGuestbookPosts or NoAnonymousGuestbookPosts or NoPublicComments or NoPrivateComments or NoAnonymousComments or ProtectGuestbook or ProtectComments or PasswordProtectOriginals or ProtectXXLarge or UnprotectCover</AccessMask>
          <Viewers>
            <Viewer>string</Viewer>
            <Viewer>string</Viewer>
          </Viewers>
          <PasswordHint>string</PasswordHint>
          <SrcPasswordHint>string</SrcPasswordHint>
        </AccessDescriptor>
        <Title>string</Title>
        <Caption>string</Caption>
        <FileName>string</FileName>
        <UploadedOn>dateTime</UploadedOn>
        <TakenOn>dateTime</TakenOn>
        <Owner>string</Owner>
        <Gallery>int</Gallery>
        <Views>int</Views>
        <Size>int</Size>
        <Rotation>None or Rotate90 or Rotate180 or Rotate270 or Flip or Rotate90Flip or Rotate180Flip or Rotate270Flip</Rotation>
        <Keywords>
          <Keyword>string</Keyword>
          <Keyword>string</Keyword>
        </Keywords>
        <Categories>
          <Category>int</Category>
          <Category>int</Category>
        </Categories>
        <Flags>None or HasTitle or HasCaption or HasKeywords or HasCategories or HasExif or HasComments</Flags>
        <TextCn>int</TextCn>
        <PricingKey>long</PricingKey>
        <MimeType>string</MimeType>
        <OriginalUrl>string</OriginalUrl>
        <UrlCore>string</UrlCore>
        <UrlHost>string</UrlHost>
        <UrlToken>string</UrlToken>
        <Copyright>string</Copyright>
        <FileHash>base64Binary</FileHash>
        <PageUrl>string</PageUrl>
        <ExifTags>
          <Id>int</Id>
          <Value>string</Value>
          <DisplayValue>string</DisplayValue>
        </ExifTags>
        <ExifTags>
          <Id>int</Id>
          <Value>string</Value>
          <DisplayValue>string</DisplayValue>
        </ExifTags>
        <ShortExif>string</ShortExif>
        <MailboxId>string</MailboxId>
        <IsVideo>boolean</IsVideo>
        <Duration>int</Duration>
      </LoadPhotoResult>
    </LoadPhotoResponse>
  </soap:Body>
</soap:Envelope>

HTTP GET

The following is a sample HTTP GET request and response. The placeholders shown need to be replaced with actual values.

GET /api/1.6/zfapi.asmx/LoadPhoto?photoId=string&level=string HTTP/1.1
Host: www.zenfolio.com
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<Photo xmlns="http://www.zenfolio.com/api/1.6">
  <Id>int</Id>
  <Width>unsignedInt</Width>
  <Height>unsignedInt</Height>
  <Sequence>string</Sequence>
  <AccessDescriptor>
    <RealmId>int</RealmId>
    <AccessType>Private or UserList or Password or Public</AccessType>
    <IsDerived>boolean</IsDerived>
    <AccessMask>ProtectAll or NoCollections or None or NoPrivateSearch or NoPublicSearch or NoRecentList or HideDateCreated or HideDateModified or HideDateTaken or ProtectExif or ProtectExtraLarge or ProtectLarge or ProtectMedium or HideMetaData or ProtectOriginals or HideUserStats or HideVisits or NoPublicGuestbookPosts or NoPrivateGuestbookPosts or NoAnonymousGuestbookPosts or NoPublicComments or NoPrivateComments or NoAnonymousComments or ProtectGuestbook or ProtectComments or PasswordProtectOriginals or ProtectXXLarge or UnprotectCover</AccessMask>
    <Viewers>
      <Viewer>string</Viewer>
      <Viewer>string</Viewer>
    </Viewers>
    <PasswordHint>string</PasswordHint>
    <SrcPasswordHint>string</SrcPasswordHint>
  </AccessDescriptor>
  <Title>string</Title>
  <Caption>string</Caption>
  <FileName>string</FileName>
  <UploadedOn>dateTime</UploadedOn>
  <TakenOn>dateTime</TakenOn>
  <Owner>string</Owner>
  <Gallery>int</Gallery>
  <Views>int</Views>
  <Size>int</Size>
  <Rotation>None or Rotate90 or Rotate180 or Rotate270 or Flip or Rotate90Flip or Rotate180Flip or Rotate270Flip</Rotation>
  <Keywords>
    <Keyword>string</Keyword>
    <Keyword>string</Keyword>
  </Keywords>
  <Categories>
    <Category>int</Category>
    <Category>int</Category>
  </Categories>
  <Flags>None or HasTitle or HasCaption or HasKeywords or HasCategories or HasExif or HasComments</Flags>
  <TextCn>int</TextCn>
  <PricingKey>long</PricingKey>
  <MimeType>string</MimeType>
  <OriginalUrl>string</OriginalUrl>
  <UrlCore>string</UrlCore>
  <UrlHost>string</UrlHost>
  <UrlToken>string</UrlToken>
  <Copyright>string</Copyright>
  <FileHash>base64Binary</FileHash>
  <PageUrl>string</PageUrl>
  <ExifTags>
    <Id>int</Id>
    <Value>string</Value>
    <DisplayValue>string</DisplayValue>
  </ExifTags>
  <ExifTags>
    <Id>int</Id>
    <Value>string</Value>
    <DisplayValue>string</DisplayValue>
  </ExifTags>
  <ShortExif>string</ShortExif>
  <MailboxId>string</MailboxId>
  <IsVideo>boolean</IsVideo>
  <Duration>int</Duration>
</Photo>

HTTP POST

The following is a sample HTTP POST request and response. The placeholders shown need to be replaced with actual values.

POST /api/1.6/zfapi.asmx/LoadPhoto HTTP/1.1
Host: www.zenfolio.com
Content-Type: application/x-www-form-urlencoded
Content-Length: length

photoId=string&level=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<Photo xmlns="http://www.zenfolio.com/api/1.6">
  <Id>int</Id>
  <Width>unsignedInt</Width>
  <Height>unsignedInt</Height>
  <Sequence>string</Sequence>
  <AccessDescriptor>
    <RealmId>int</RealmId>
    <AccessType>Private or UserList or Password or Public</AccessType>
    <IsDerived>boolean</IsDerived>
    <AccessMask>ProtectAll or NoCollections or None or NoPrivateSearch or NoPublicSearch or NoRecentList or HideDateCreated or HideDateModified or HideDateTaken or ProtectExif or ProtectExtraLarge or ProtectLarge or ProtectMedium or HideMetaData or ProtectOriginals or HideUserStats or HideVisits or NoPublicGuestbookPosts or NoPrivateGuestbookPosts or NoAnonymousGuestbookPosts or NoPublicComments or NoPrivateComments or NoAnonymousComments or ProtectGuestbook or ProtectComments or PasswordProtectOriginals or ProtectXXLarge or UnprotectCover</AccessMask>
    <Viewers>
      <Viewer>string</Viewer>
      <Viewer>string</Viewer>
    </Viewers>
    <PasswordHint>string</PasswordHint>
    <SrcPasswordHint>string</SrcPasswordHint>
  </AccessDescriptor>
  <Title>string</Title>
  <Caption>string</Caption>
  <FileName>string</FileName>
  <UploadedOn>dateTime</UploadedOn>
  <TakenOn>dateTime</TakenOn>
  <Owner>string</Owner>
  <Gallery>int</Gallery>
  <Views>int</Views>
  <Size>int</Size>
  <Rotation>None or Rotate90 or Rotate180 or Rotate270 or Flip or Rotate90Flip or Rotate180Flip or Rotate270Flip</Rotation>
  <Keywords>
    <Keyword>string</Keyword>
    <Keyword>string</Keyword>
  </Keywords>
  <Categories>
    <Category>int</Category>
    <Category>int</Category>
  </Categories>
  <Flags>None or HasTitle or HasCaption or HasKeywords or HasCategories or HasExif or HasComments</Flags>
  <TextCn>int</TextCn>
  <PricingKey>long</PricingKey>
  <MimeType>string</MimeType>
  <OriginalUrl>string</OriginalUrl>
  <UrlCore>string</UrlCore>
  <UrlHost>string</UrlHost>
  <UrlToken>string</UrlToken>
  <Copyright>string</Copyright>
  <FileHash>base64Binary</FileHash>
  <PageUrl>string</PageUrl>
  <ExifTags>
    <Id>int</Id>
    <Value>string</Value>
    <DisplayValue>string</DisplayValue>
  </ExifTags>
  <ExifTags>
    <Id>int</Id>
    <Value>string</Value>
    <DisplayValue>string</DisplayValue>
  </ExifTags>
  <ShortExif>string</ShortExif>
  <MailboxId>string</MailboxId>
  <IsVideo>boolean</IsVideo>
  <Duration>int</Duration>
</Photo>


JSON-RPC

The following is a sample JSON-RPC request and response. The placeholders shown need to be replaced with actual values.

POST /api/1.6/zfapi.asmx HTTP/1.1
Host: www.zenfolio.com
Content-Type: application/json
Content-Length: length

{
    "method": "LoadPhoto",
    "params": [photoId, level],
    "id": id
}
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: length

{
    "result": value,
    "error": null,
    "id": id
}
Request
Response