HTTP વિનંતી મોકલો
HTTP વિનંતી મોકલો ઍક્શન તમારા વર્કફ્લોને વેબ સર્વર અથવા URL સાથે કનેક્ટ કરે છે અને HTTP વિનંતીઓ મોકલે છે.
Flow તમારી HTTP વિનંતી મોકલે તે પછી, તે HTTP પ્રતિસાદ કોડ માટે મહત્તમ 30 સેકન્ડ રાહ જુએ છે. જો Flow ને 30 સેકન્ડ પછી પ્રતિસાદ ન મળે, તો તે તમારી ઍપ સાથેનું કનેક્શન બંધ કરે છે. બાદમાં, તે વિનંતી ફરીથી કરવાનો પ્રયાસ કરે છે.
ફીલ્ડ
HTTP વિનંતી મોકલો ઍક્શનમાં નીચેના ફીલ્ડ શામેલ છે.
| ફીલ્ડ | વર્ણન |
|---|---|
| HTTP પદ્ધતિ | મોકલવાની HTTP વિનંતીની પદ્ધતિ. HTTP વિનંતી મોકલો ઍક્શન નીચેની પદ્ધતિઓને સપોર્ટ કરે છે:
|
| URL | જે સર્વર પર HTTP વિનંતી મોકલવામાં આવે છે તેનું URL. |
| હેડર્સ | HTTP વિનંતી માટે કી અને મૂલ્યની જોડી. બહુવિધ કી-મૂલ્ય જોડીઓ દાખલ કરી શકાય છે. |
| બૉડી | સર્વર પર મોકલવામાં આવતી સામગ્રી. |
| ક્લાયન્ટની ભૂલ પર (4XX પ્રતિસાદ) | જ્યારે કોઈ પ્રતિસાદ કોડ મળે જે ક્લાયન્ટની ભૂલ દર્શાવતો હોય, ત્યારે Flow આ કરશે:
|
| સર્વરની ભૂલ પર (5XX અથવા 429 પ્રતિસાદ) | જ્યારે કોઈ પ્રતિસાદ કોડ મળે જે સર્વરની ભૂલ દર્શાવતો હોય, ત્યારે Flow આ કરશે:
|
પરત મળેલ ડેટા
આ ઍક્શન પછીનાં પગલાંમાં પરત મળેલ ડેટાને ઍક્સેસ કરવા માટે, sendHttpRequest નામના વેરિયેબલનો ઉપયોગ કરો, જેમાં HTTP પ્રતિસાદની તમામ વિગતો શામેલ છે. વૈકલ્પિક રીતે, નીચે આપેલા ઉદાહરણની જેમ જ, આગળના વર્કફ્લો પગલાંમાં ઉપયોગ માટે પ્રતિસાદની body ને પાર્સ કરવા માટે Run code ઍક્શનનો ઉપયોગ કરો.
જો એક જ વર્કફ્લોમાં HTTP વિનંતી મોકલો ઍક્શનનો ઉપયોગ એક કરતાં વધુ વખત કરવામાં આવ્યો હોય, તો વેરિયેબલના નામમાં એક નંબર ઉમેરવામાં આવે છે. ઉદાહરણ તરીકે, એવા વર્કફ્લોમાં કે જે HTTP વિનંતી મોકલો ઍક્શનનો બે વાર ઉપયોગ કરે છે, પરત મળેલ ડેટા માટે પહેલો વેરિયેબલ sendHttpRequest છે અને બીજો વેરિયેબલ sendHttpRequest1 છે. આ નામ કસ્ટમાઇઝ કરી શકાતું નથી.
પ્રતિસાદ કોડ
નીચેનું કોષ્ટક વર્ણવે છે કે Flow પ્રતિસાદ મેળવ્યા પછી HTTP રિસ્પૉન્સ કોડ પર કેવી રીતે પ્રક્રિયા કરે છે.
| HTTP રિસ્પૉન્સ કોડ | Flow રિસ્પૉન્સ કોડ પર કેવી રીતે પ્રક્રિયા કરે છે |
|---|---|
| 2XX અથવા 3XX સફળતા | Flow HTTP વિનંતીને સફળતા તરીકે માર્ક કરે છે અને વર્કફ્લોમાં આગળની ઍક્શન્સ કરે છે. |
| 4XX એરર, 5XX અને 429 એરર | ઍક્શનને કેવી રીતે કન્ફિગર કરવામાં આવી છે તેના આધારે, Flow નીચે મુજબ કરશે:
|
| અન્ય રિસ્પૉન્સ કોડ | જો રિસ્પૉન્સ એવો કોડ પરત કરે છે જેનું વર્ણન આ કોષ્ટકમાં નથી અથવા તે ઍક્શન્સનો ફરી પ્રયાસ કરતી વખતે સમયસમાપ્ત થઈ જાય છે, તો Flow HTTP વિનંતીને નિષ્ફળ તરીકે માર્ક કરે છે, વર્કફ્લો રનને નિષ્ફળ કરે છે અને વર્કફ્લોની આગળની ઍક્શન્સ લેતું નથી. |
સિક્રેટ્સ
સિક્રેટ્સનો ઉપયોગ HTTP વિનંતી મોકલો ઍક્શનમાં ઉપયોગમાં લેવા માટે સંવેદનશીલ માહિતી, જેમ કે ઍક્સેસ ટોકન અથવા પાસવર્ડને સુરક્ષિત રીતે સ્ટોર કરવા માટે થાય છે. સિક્રેટ્સને Flow > સેટિંગ પેજ પરથી બનાવવામાં આવે છે અને મેનેજ કરવામાં આવે છે. સિક્રેટમાં હૅન્ડલ, મૂલ્ય (વૅલ્યૂ) અને વર્ણન હોય છે. URL, હેડર મૂલ્ય અથવા બૉડી ફીલ્ડને કન્ફિગર કરતી વખતે સિક્રેટનો લિક્વિડ ચલ (જેમ કે {{secrets.handle}}) તરીકે અથવા સિક્રેટ ઉમેરો વિકલ્પમાંથી સંદર્ભ આપો. સિક્રેટનાં મૂલ્યો Flow ઇન્ટરફેસમાં ક્યારેય દેખાતા નથી અને વર્કફ્લો રન લૉગમાંથી કાઢી નાખવામાં આવે છે.
ટ્રિગર્સ
HTTP વિનંતી મોકલો ઍક્શનનો ઉપયોગ કોઈપણ વર્કફ્લોમાં થઈ શકે છે.
ઉદાહરણો
ઉદાહરણ 1: બાહ્ય સેવામાં HTTP વિનંતી મોકલો
આ ઉદાહરણમાં, બાહ્ય સેવામાં HTTP વિનંતી મોકલવા માટે Flow નો ઉપયોગ કરો.
તમે શરૂ કરો તે પહેલાં, એવી વેબ સેવાને કન્ફિગર કરો જે HTTP વિનંતીઓ મેળવે છે અને પરીક્ષણ માટે તે વિનંતીઓનો ડેટા સ્ટોર કરે છે, જેમ કે Request Catcher. તૃતીય-પક્ષ સેવાને સંવેદનશીલ ડેટા (જેમ કે પાસવર્ડ અથવા API કી) મોકલતી વખતે સાવધાની રાખવાનું યાદ રાખો.
પગલાં:
- પ્રોડક્ટનું સ્ટેટસ અપડેટ કરવામાં આવ્યું ટ્રિગર પસંદ કરો, જે તમને પ્રોડક્ટ પર સ્ટેટસ બદલીને આ વર્કફ્લોનું પરીક્ષણ કરવાની મંજૂરી આપે છે.
- તમારા વર્કફ્લોમાં એક HTTP વિનંતી મોકલો ઍક્શન ઉમેરો અને તેને ટ્રિગર સાથે કનેક્ટ કરો. પછી HTTP વિનંતી મોકલો પગલાં પર ક્લિક કરીને કન્ફિગરેશન પૅનલ ખોલો.
- HTTP પદ્ધતિ (HTTP Method) ફીલ્ડમાં,
POSTદાખલ કરો. - URL ફીલ્ડમાં, પરીક્ષણ કરવા માટેનું URL દાખલ કરો, જેમ કે
https://yourFlowTest.requestcatcher.com/test. - હેડર્સ વિભાગમાં,
Content-Typeની કી અનેtext/plainના મૂલ્ય સાથે હેડર દાખલ કરો. - ટ્રિગરમાંથી પ્રોડક્ટનું શીર્ષક અને અપડેટ કરેલું સ્ટેટસ મોકલવા માટે, બૉડી વિભાગમાં,
{{product.title}}અને{{product.status}}દાખલ કરો.
- HTTP પદ્ધતિ (HTTP Method) ફીલ્ડમાં,
- વર્કફ્લો સક્રિય કરો.
- પ્રોડક્ટ પર સ્ટેટસ બદલીને તેનું પરીક્ષણ કરો, જેમ કે ડ્રાફ્ટ માંથી સક્રિય પર.
- બાહ્ય પરીક્ષણ સેવામાં પરિણામોનું અવલોકન કરો, જેમ કે આ ઉદાહરણમાં
https://yourFlowTest.requestcatcher.com/.
ઉદાહરણ 2: HTTP રિસ્પૉન્સને પાર્સ કરવા માટે Run code નો ઉપયોગ કરો
આ ઉદાહરણમાં, બાહ્ય સેવામાં HTTP વિનંતી મોકલવા માટે Flow નો ઉપયોગ કરો અને વર્કફ્લોના આગળના પગલાંમાં ઉપયોગ માટે HTTP રિસ્પૉન્સની body ને પાર્સ કરવા માટે Run code ઍક્શનનો ઉપયોગ કરો.
તમે શરૂ કરો તે પહેલાં, એવી વેબ સેવા પસંદ કરો જે HTTP વિનંતીઓ મેળવે છે અને ડેટા પરત કરે છે, જેમ કે Postman Echo. તૃતીય-પક્ષ સેવાને સંવેદનશીલ ડેટા (જેમ કે પાસવર્ડ અથવા API કી) મોકલતી વખતે સાવધાની રાખવાનું યાદ રાખો.
પગલાં:
પ્રોડક્ટનું સ્ટેટસ અપડેટ કરવામાં આવ્યું ટ્રિગર પસંદ કરો, જે તમને પ્રોડક્ટ પર સ્ટેટસ બદલીને આ વર્કફ્લોનું પરીક્ષણ કરવાની મંજૂરી આપે છે.
તમારા વર્કફ્લોમાં HTTP વિનંતી મોકલો ઍક્શન ઉમેરો અને તેને ટ્રિગર સાથે કનેક્ટ કરો. પછી HTTP વિનંતી મોકલો પગલાં પર ક્લિક કરીને કન્ફિગરેશન પૅનલ ખોલો.
HTTP પદ્ધતિ (HTTP Method) ફીલ્ડમાં,
POSTદાખલ કરો.URL ફીલ્ડમાં, પરીક્ષણ કરવા માટેનું URL દાખલ કરો, જેમ કે
https://postman-echo.com/post.હેડર્સ વિભાગમાં,
Content-Typeની કી અનેapplication/jsonના મૂલ્ય સાથે હેડર દાખલ કરો.બૉડી વિભાગમાં, વર્કફ્લો પર પરત કરવા માટે ઉદાહરણ JSON દાખલ કરો, જેમ કે:
{ "productTitle": "{{product.title}}", "productStatus": "{{product.status}}" }
તમારા વર્કફ્લોમાં Run code ઍક્શન ઉમેરો અને તેને HTTP વિનંતી મોકલો ઍક્શન સાથે કનેક્ટ કરો. પછી Run code પગલાં પર ક્લિક કરીને કન્ફિગરેશન પૅનલ ખોલો.
ઇનપુટ વ્યાખ્યાયિત કરો (Define inputs) ફીલ્ડમાં,
sendHTTPrequestઑબ્જેક્ટ દ્વારા પરત કરવામાં આવેલીbodyનો સમાવેશ કરો, જેમ કે:query{ sendHttpRequest { body } }આઉટપુટ વ્યાખ્યાયિત કરો (Define outputs) ફીલ્ડમાં, આઉટપુટ સ્કીમામાં વ્યાખ્યાયિત કર્યા મુજબ, જેમ કે:
type Output { productTitle: String! productStatus: String! }કોડ લખો (Write code) ફીલ્ડમાં,
JSON.parseપદ્ધતિનો ઉપયોગ કરીને રિસ્પૉન્સને પાર્સ કરો અને ખાતરી કરો કે તમે જે ડેટા પરત કરો છો તે આઉટપુટ સ્કીમામાં વ્યાખ્યાયિત કરેલા આકાર અને પ્રકારો સાથે મેળ ખાય છે, જેમ કે:export default function main(input) { const body = JSON.parse(input.sendHttpRequest.body); console.log("body is", body); return { productTitle: body.data.productTitle, productStatus: body.data.productStatus } }
તમારા વર્કફ્લોમાં Log output ઍક્શન ઉમેરો અને તેને Run code ઍક્શન સાથે કનેક્ટ કરો. પછી Run code પગલાં પર ક્લિક કરીને કન્ફિગરેશન પૅનલ ખોલો.
આઉટપુટ ફીલ્ડમાં, Run code પગલાં દ્વારા પરત કરવામાં આવેલા ચલોનો સમાવેશ કરો, જેમ કે:
Title from HTTP response: {{runCode.productTitle}} Status from HTTP response: {{runCode.productStatus}}
વર્કફ્લો સક્રિય કરો.
પ્રોડક્ટ પર સ્ટેટસ બદલીને તેનું પરીક્ષણ કરો, જેમ કે ડ્રાફ્ટ માંથી સક્રિય પર.
Flow / તાજેતરના રન (Recent runs) પેજ પરથી પરિણામી રનનું અવલોકન કરો અને નોંધો કે Log output પગલાંનાં મૂલ્યો HTTP વિનંતી મોકલો આઉટપુટમાંથી પરત કરવામાં આવેલાં મૂલ્યો સાથે મેળ ખાય છે.
ટેમ્પ્લેટ્સ
તમારા ફુલફિલમેન્ટ પ્રદાતાને આગામી ઑર્ડર વિશે સૂચિત કરો
જ્યારે ઑર્ડર ટૅગરમાં ઑર્ડરને "Warehouse" તરીકે ટૅગ કરવામાં આવે ત્યારે તમારા ફુલફિલમેન્ટ પ્રદાતાને HTTP વિનંતી મોકલો. ટેમ્પ્લેટ જુઓ
નવા ઑર્ડર Airtable પર મોકલો
જ્યારે ઑર્ડર બનાવવામાં આવે ત્યારે ઑર્ડર Airtable પર મોકલો. ટેમ્પ્લેટ જુઓ
બધી વર્તમાન અને નવી પ્રોડક્ટ્સ Airtable પર મોકલો
દર 10 મિનિટે, એવી પ્રોડક્ટ્સ શોધો જે Airtable પર મોકલવામાં આવી નથી (ટૅગ દ્વારા) અને તેમને Airtable પર મોકલો. ટેમ્પ્લેટ જુઓ
Airtable માં સ્ટોર કરેલા પ્રોડક્ટ ડેટામાંથી બૅચમાં પ્રોડક્ટ્સ અપડેટ કરો
Airtable માં સ્ટોર કરેલા પ્રોડક્ટ ડેટામાંથી બૅચમાં પ્રોડક્ટ્સ અપડેટ કરો. ટેમ્પ્લેટ જુઓ
SendGrid નો ઉપયોગ કરીને ગ્રાહકોને સમયસમાપ્ત થતાં ગિફ્ટ કાર્ડ્સ વિશે સૂચિત કરો
દરરોજ, 7 દિવસમાં સમયસમાપ્ત થતાં હોય તેવાં તમામ ગિફ્ટ કાર્ડ્સ મેળવો અને SendGrid નો ઉપયોગ કરીને ગ્રાહકોને ઇમેઇલ મોકલો. ટેમ્પ્લેટ જુઓ
જ્યારે ગ્રાહકો કસ્ટમ આઇટમ માટે ઑર્ડર આપે ત્યારે SendGrid નો ઉપયોગ કરીને ઇમેઇલ મોકલો
જ્યારે ગ્રાહક કસ્ટમ આઇટમ માટે ઑર્ડર આપે ત્યારે SendGrid નો ઉપયોગ કરીને ટ્રાન્ઝેક્શનલ ઇમેઇલ મોકલો. ટેમ્પ્લેટ જુઓ