uploadPhotoメソッド

 目的

このメソッドを使用すると、見込み客または連絡先に写真をアップロードできます。

 リクエストURL

XML形式:

見込み客の場合:
https://crm.zoho.com/crm/private/xml/Leads/uploadPhoto?authtoken=Auth Token&scope=crmapi&id=Record Id&content=File Input Stream

連絡先の場合:
https://crm.zoho.com/crm/private/xml/Contacts/uploadPhoto?authtoken=Auth Token&scope=crmapi&id=Record Id&content=File Input Stream

 リクエストパラメーター

パラメーターデータ型説明
authtoken*文字列Zoho認証情報の認証に使用する、暗号化された英数字文字列。
scope*文字列値をcrmapiと指定してください。
id*文字列データの一意のIDを指定してください。
content*FileInputStream写真のFileInputStreamを渡してください。

* - 必須パラメーター

注:

  • 各写真のサイズは2 MBを超えないようにしてください。サイズが2 MBを超えると、「ファイルサイズは2 MBを超えることはできません」というエラーメッセージが表示されます。

 見込み客または連絡先に写真をアップロードするJavaコード

このプログラムをJava環境で実行すると、見込み客または連絡先に写真をアップロードできます。

プログラムで値を指定する必要があるもの:

  • 認証トークン
  • データのID
  • 上述の形式で指定したuploadPhotoリクエストURL
  • ファイルパス(写真の場所)
import java.io.*;
import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.methods.*;
import org.apache.commons.httpclient.methods.multipart.Part;
import org.apache.commons.httpclient.methods.multipart.FilePart;
import org.apache.commons.httpclient.methods.multipart.StringPart;
import org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity;
import org.apache.commons.httpclient.methods.multipart.PartSource;
import org.apache.commons.httpclient.methods.multipart.ByteArrayPartSource;
public class UploadPhoto 
{
      public static void main(String args[])
      {
            try
            {
                  String auth_token = "USER AUTH TOKEN";
                  String auth_scope = "crmapi";
                  String targetURL = "https://crm.zoho.com/crm/private/xml/Leads/uploadPhoto";
                  String recordId = "RECORD ID";
                  String file = "FILE NAME";
                  File f = new File(file);
                  FileInputStream fis = new FileInputStream(f);
                  ByteArrayOutputStream bos = new ByteArrayOutputStream();
                  int c;
                  while ((c = fis.read()) != -1)
                  {
                        bos.write(c);
                  }
                  byte[] fbArray = bos.toByteArray();
                  if(useAuthToken)
                  {
                        targetURL = targetURL + "?authtoken="+ auth_token +"&ampscope="+ auth_scope;
                  }
                  PartSource ps = new ByteArrayPartSource(file,fbArray);
                  PostMethod post =new PostMethod(targetURL);
                  Part[] fields = { new FilePart("content",ps), new StringPart("id", recordId), };
                  post.setRequestEntity(new MultipartRequestEntity(fields,post.getParams()));
                  HttpClient httpclient = new HttpClient();
                  httpclient.executeMethod(post);
                  String postResp = post.getResponseBodyAsString();
                  System.out.println("postResp===========&gt : "+postResp);
            }
            catch(Exception e)
            {
                  e.printStackTrace();
            }
      }
}

 レスポンス例

<?xml version="1.0" encoding="UTF-8" ?>
<response uri="/crm/private/xml/Leads/uploadPhoto">
<status>
<code>200</code>
</status>
<success>
<code>4800</code>
<message>Photo uploaded succuessfully</message>
</success>
</response>

 見込み客または連絡先に写真をアップロードするPHPコード

<?php
$recordId="2000000016885";
$ch=curl_init();
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch,CURLOPT_VERBOSE,0);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_URL,"https://crm.zoho.com/crm/private/xml/Leads/uploadPhoto?authtoken=<Your Authtoken>&scope=crmapi");
curl_setopt($ch,CURLOPT_POST,true);
$post=array("id"=>$recordId,"content"=>"@/home/path/to/my/photo.png");
curl_setopt($ch,CURLOPT_POSTFIELDS,$post);
$response=curl_exec($ch);
echo $response;
?>