[go: up one dir, main page]

0% found this document useful (0 votes)
29 views39 pages

CFSP Integration API V1.0 17 Jun 2022

Uploaded by

ca.akash.ashok
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views39 pages

CFSP Integration API V1.0 17 Jun 2022

Uploaded by

ca.akash.ashok
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

Integration of

Central Food grains Storage Portal


[CFSP]
with
State storage portal

Web Services Integration Document

Food and Public Distribution System


National Informatics Centre HQ
CGO Complex, Lodhi Road, New Delhi
Central Food grains Storage Portal Version 1.0

Document Control Record

Title API Integration Document for Central Food grain Storage Portal (CFSP)
Description API Document explaining the web services for exchange of data between CFSP
(Central Server) and respective State storage application / portal.
Maintained Food & Public Distribution System, National Informatics Centre
by
Version Submission Change Record / Reason for Author(s) Status
Date change
1.0 11-Apr-2022 Initial 1. Anita Initial
2. AJK Jose
1.0 17-Jun-2022 Json Format change for Truck 1.Anita
Stack inflow and Truck Stack 2. AJK Jose
Outflow

Reviewers:
Reviewer(s) Version Review Remarks
AJK Jose (ajk.jose@nic.in) 1.0 Released in April 2022

Distribution:

Version Distribution List Location


1.0 FCI and States / UTs New Delhi & States
Central Food grains Storage Portal Version 1.0

Contents
1. Introduction .................................................................................................................................. 1
2. Scope ............................................................................................................................................. 2
2.1 APIs for Data Receiving& Sharing .............................................................................................. 2
2.1.1 Web Service for State storage application to push the profile of a given depot. ................ 3
2.1.1.1 Authorization Setup ...................................................................................................... 3
2.1.1.2 Input JSON Parameters ................................................................................................. 3
2.1.1.3 Request/Response JSON Parameters ........................................................................... 6
2.1.2 Web Service for State storage application to push the details of Stack Wise Stock Position
details. ........................................................................................................................................... 7
2.1.2.1 Authorization Setup ...................................................................................................... 7
2.1.2.2 Input JSON Parameter ................................................................................................... 7
2.1.2.3 Request/Response JSON Parameter ............................................................................ 9
2.1.3 Web Service for State application to push the inward details of Truck and inflow into
stack. ........................................................................................................................................... 10
2.1.3.1 Authorization Setup .................................................................................................... 11
2.1.3.2 Input JSON Parameter ................................................................................................. 11
2.1.3.3 Request/Response JSON Parameter .......................................................................... 12
2.1.4 Web Service for State application to push the outward details of Truck and outflow from
stack. ........................................................................................................................................... 14
2.1.4.1 Authorization Setup .................................................................................................... 14
2.1.4.2 Input JSON Parameter ................................................................................................. 14
2.1.4.3 Request/Response JSON Parameter .......................................................................... 16
2.1.5 Web Service for State application to push the details of Stack Gain/Loss Summary. ....... 17
2.1.5.1 Authorization Setup .................................................................................................... 18
2.1.5.2 Input JSON Parameter ................................................................................................. 18
2.1.5.3 Request/Response JSON Parameter .......................................................................... 19
2.1.6 Web Service for State application to push the details of Infestation details. ................... 20
2.1.6.1 Authorization Setup .................................................................................................... 21
2.1.6.2 Input JSON Parameter ................................................................................................. 21
2.1.6.3 Request/Response JSON Parameter .......................................................................... 23
2.1.7 Web Service for State application to push the details of Treatment details. .................... 24
2.1.7.1 Authorization Setup .................................................................................................... 24
Central Food grains Storage Portal Version 1.0

2.1.7.2 Input JSON Parameter ................................................................................................. 24


2.1.7.3 Request/Response JSON Parameter .......................................................................... 26
3. APIs for Master ........................................................................................................................... 29
4. API’s URL and Token Generation ............................................................................................... 34
5. Sample URL’s .............................................................................................................................. 35
Central Food grains Storage Portal Version 1.0

1. Introduction

Food Corporation of India (FCI) and the State Agencies, on behalf of Government of India, extend
price support for procurement of wheat, paddy and coarse grains. All the food grains conforming to
the prescribed specifications are bought by the public procurement agencies (including State
governments under DCP procurement) at the Minimum Support Price (MSP).

FCI has developed and implemented DOS application to cater to end-to-end automation of depot
operations, involving various depot operations activities, viz. storage, preservation, receipt and
issue of food grains etc. DOS application is already functional in its owned godowns and has also
been extended to the hired godowns.

Further, as per the vision of the DFPD, an ecosystem of online storage management applications is
being developed in all DCP States which will ensure implementation of certain standards related to
storage management. FCI intends to establish a central portal for online storage management in all
FCI (owned and hired) and State Government (owned and hired) across the country to ensure
adherence to SOP compliance for storage godowns.

Accordingly, with an objective of streamlining and bringing uniformity to the management practices
across the country, and analysis of the various storage Management Portals of the States was
recently conducted by FCI. Efforts have been made to identify the minimum storage specifications
(MSS) that must necessarily be captured by the State storage management portals, so as to ensure
uniformity and interoperability among them. The MSS are mentioned as under:

 Capability to compute Storage capacity


 Depict Storage point-wise stock position
 Crop-year-wise break up of stocks held and depiction of opening Balance (OB), Issue
and Closing Balance (CB)
 Stack-wise, Truck-Wise Linkages
 Stack-wise details of stock-position, Truck-wise information
 Quality Parameters
 Infestation details, Treatment details

Govt. of India has desired that various storage management operations, quality parameters and
movement details shall be captured using different State portals. The operations are to be
standardized with respect to the minimum storage specifications.

Further, these State portals are to integrate with the central portal, in order to ensure that the
storage operations are carried out with complete transparency, efficiency and provide consolidated
information to ensure storage losses and deficiencies of food grains in the storage units. This will
facilitate enhanced decision-making and policy making.

Page 1 of 39
Central Food grains Storage Portal Version 1.0

2. Scope
These web services provide a common data format to the States using which State storage
application will push the data as per the parameter defined in the common data format.

2.1 APIs for Data Receiving& Sharing

There are 6 Transactional Web Services which facilitates State storage portals to send details
related to Minimum Storage specifications, to the central portal.

Sl. No. Service Name Service Purpose Service


Method
1. Depot Profile Profile of the depot along with the storage POST
capacity of the depot.

2. Stack Profile Profile of the stack. POST

3. Inflow Details of receipt. POST

4. Outflow Details of issue / dispatch. POST

5. Stack – Gain – Loss Details of the loss or gain of the stack at the POST
time of stack getting killed.

6. Infested Stacks Details of the infestation of the respective POST


stack.

7. Treated Stacks Details of the treatment carried out on the POST


respective stacks.

There are 6 Web Services related to Masters provided by the central portal:

Sl. Service Name Service Purpose Service


No. Method

1. Commodity Commodity Master GET

2.

3. Bag Type Bag Type GET

4. State Master State Master GET

5. District Master District Master GET

6. Tehsil Master Tehsil Master GET

7. Village Master Village Master GET

Page 2 of 39
Central Food grains Storage Portal Version 1.0

For the sake of uniformity, relevant Masters like Commodity, State code, LGD District Code, LGD
Tehsil Master, LGD Village master, etc., shall be defined by CFSP Central Server. This master details
and the relevant ID’s/Code can be accessed from the website of CFSP using the GET method based
services. The website https://lgdirectory.gov.in may be used to download the latest LGD codes of
State, District, Sub-district, village etc.,

2.1.1 Web Service for State storage application to push the profile of a given depot.

DEPOT PROFILE

This CFSP API will consume the details of the depot profile pushed by State storage application to
central CFSP Server.

Frequency: As and when a depot is getting hired or dehired or created in the storage application
of the State.

2.1.1.1 Authorization Setup

Header Value
Client Id To be provided by CFSP team
Client Password To be provided by CFSP team

2.1.1.2 Input JSON Parameters

S. Parameter Data Type Description/ Purpose Requi


No. red?

1. lgd_state_code integer LGD State Code of depot / godown Y

2. lgd_district_code integer LGD District code of depot / godown Y

3. depot_status integer Whether depot is active or inactive? Y


1. Active
2. Inactive
4. depot_code character Depot Code; as maintained in the Y
varying(99) State storage application.
5. depot_name character Y
Depot Name
varying(99)

Page 3 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/ Purpose Requi


No. red?

6. declared_capacity Integer Declared storage capacity of the depot Y


(in MTs) / godown in MTs.
7. ownership_group_type Integer 1. FCI Y
(Depot Type) 2. State Government
3. CWC
4. SWC
5. PEG
99. Others
8. owner_name character Name of agency or the individual or Y
varying(99) group owning the depot / godown.
9. ownership_type Integer 1. Owned Y
2. Hired
10. hired_by Integer Applicable only if Ownership type is Y/O
Hired. The entity who has hired the
depot / godown.
1. FCI
2. State Government
3. CWC
4. SWC
5. PEG
99. Others
11. hired_from Integer Applicable only if Ownership type is Y/O
Hired. The entity from whom the
depot / godown has been hired.
1. FCI
2. State Government
3. CWC
4. SWC
5. PEG
99. Others
12. hired_from_date character Date of hiring of the depot / godown. Y/O
(DD-MM-YYYY) varying(10) Mandatory if Ownership type is Hired.
If the depot is owned, then the date
from which the depot is operational
may be provided.

The hired from date should be less


than or equal to system date.
13. hired_upto_date character Date up to which the depot /godown Y/O
(DD-MM-YYYY) varying(10) has been hired. Mandatory if
Ownership type is Hired.

The hired upto date should be greater


than or equal to system date.

Page 4 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/ Purpose Requi


No. red?

14. depot_address character Address of the depot / godown. Y


varying(99)
15. latitude character GIS Y/O
varying(20)
16. longitude character GIS Y/O
varying(20)
17. pin_code Integer Pin Code of the depot Y

18. electronic_weighbridge_count Integer Count of electronic weigh bridges. Y


0. Not Available
1. if one WB available
2. if two WBs Available
3. if three … and so on
19. electronic_weighbridge_make character OEM/ Make of the electronic Y/O
varying(99) weighbridge. If more than one, the
makes may be provided as comma
separated values.
20. rail_sided integer Whether the depot / godown is rail Y
sided or not?
1. Yes
2. No
21. rail_siding_count Integer Count of rail sidings. Y
0. Not Available
1. if one rail siding available
2. if two rail sidings available
3. if three … and so on
22. lgd_subdistrict_code integer LGD Sub-district Code O

23. lgd_block_code integer LGD Block Code O

24. lgd_village_code integer LGD Village code O

25. new_update integer 1. New / First time sending of the data Y


2. Update / any parameter is updated
26. data_date character The date to which the data pertains Y
(DD-MM-YYYY) varying(10) to.
27. transaction_reference_id character Transaction reference number to be Y
varying(12) tagged with every record pushed by
State application (2 digit LGD state
code (If LGD state code is single digit,
prefix with ‘0’ + 10 digit running
number / random number). Should
not be duplicate.

Page 5 of 39
Central Food grains Storage Portal Version 1.0

2.1.1.3 Request/Response JSON Parameters

Web Service Type: Transaction Service -1


Web Service Name: DEPOT PROFILE
Method: POST
URL:<domain>/cfsp /depot_profile/{client_id}
Note: <domain> may be kept as a variable, since domain name may change.

Request JSON:

[ {
"lgd_state_code":11,
"lgd_district_code":345,
"depot_status":1462,
"depot_code":"12345",
"depot_name":"Sohan",
"declared_capacity":125,
"ownership_group_type":1,
"owner_name":"Suresh",
"ownership_type":1,
"hired_by":3,
"hired_from":4,
"hired_from_date":"09-03-2022",
"hired_upto_date":"31-03-2022",
"depot_address":"Vasdhra enclave Delhi",
"latitude":"356",
"longitude":"123,
"pin_code":110035,
"electronic_weighbridge_count":2,
"electronic_weighbridge_make":"56,89,336,452",
"rail_sided":1,
"rail_siding_count":1,
"lgd_subdistrict_code":896,
"lgd_block_code":253,
"lgd_village_code":745,
"new_update":1,
"data_date":"14-03-2022",
"transaction_reference_id":“111234567891”
} ]

Response JSON:

{
"data": {
"client_id": "1",
"transaction_id": "111234567891",

Page 6 of 39
Central Food grains Storage Portal Version 1.0

"service_code": "DEPOTPROFILE",
"transaction_status": "SUCCESS",
"transaction_remarks": "Depot Profile Uploaded",
"data_landing_timestamp": "2022-03-31 09:47:37.895",
"acknowledgement_no": "310320221232125"
},
"message": "Depot Profile saved successfully.",
"status": 200
}

2.1.2 Web Service for State storage application to push the details of Stack Wise Stock
Position details.

STACK PROFILE

This CFSP API will consume the details of the stacks in a given depot. The stack details shall be
pushed by State storage application to central CFSP Server.

Frequency: Daily

2.1.2.1 Authorization Setup


Header Value
Client Id Same client id which is specified by CFSP
Client Password Same client password which is specified by CFSP

2.1.2.2 Input JSON Parameter

S. Parameter Data Type Description/Purpose Requir


No. ed?

1. lgd_state_code integer LGD State Code of depot / godown Y

2. lgd_district_code integer LGD District code of depot / godown Y

3. depot_status integer Whether depot is active or inactive? Y


1. Active
2. Inactive
4. depot_code character Depot Code; as maintained in the State Y
varying(99) storage application.
5. depot_name character Depot name. Y
varying(99)
6. stack_number character Stack Number or Stack ID Y
varying(99)
7. stack_capacity double Declared capacity of the stack Y

Page 7 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

(in Qtl.Kgs.)
8. stack_created_on character Date on which the stack was created. Y
(DD-MM-YYYY) varying(10)
9. stack_formed_on character Date on which the stack was fully formed. Y
(DD-MM-YYYY) varying(10)
10. stack_formation_quantity double Quantity of stocks stored in the fully Y
(in Qtl.Kgs.) formed stack as on stack formation date.
11. storage_type integer The type of storage within which the Y
stack exists.
1. Covered
2. CAP(Scientific)
3. CAP(Non-Scientific)

12. commodity Integer The commodity which is stored in the Y


stack. The code of commodities can be
obtained through the master service of
commodity. The commodity codes are
maintained at the central server.

Wheat
Rice-Grade A(RRA)
Rice-Common(RRC)
Rice-Parboiled(PBR)
Fortified Rice Kernel(FRK)
Paddy

13. marketing_season Integer The season to which the stacked Y


commodity belongs to.
1. KMS (Kharif marketing season)
2. RMS (Rabi marketing season)
14. crop_year character Y
2021-2022 (Financial Year)
varying(9)
15. crop_type_id integer 1. Kharif crop Y
2. Rabi crop
16. bag_type integer The type of bag within which the Y
commodity is stored in the stack. Master
available.
1. SBT (580)
2. SBT
3. HDPE

17. categorization_type integer Category of the commodity / stock stored Y


in the stack

Page 8 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

1. Issuable – Category A
2. Issuable – Category B
3. Issuable – Category C
4. Issuable – Category D

8. Non-Issuable – Feed 1
9. Non-Issuable – Feed 2
10. Non-Issuable – Feed 3

14. Industrial Use


15. Manure
16. Fit for dumping
18. opening_balance double Quantity in the stack at the opening of Y
(in Qtl.Kgs.) the day i.e., data_date.
19. closing_balance double Quantity in the stack at the closing of the Y
(in Qtl.Kgs.) day i.e., data_date.
20. transaction_reference_id character Transaction reference number to be Y
varying(12) tagged with every record pushed by State
application (2 digit LGD state code (If LGD
state code is single digit, prefix with ‘0’ +
10 digit running number / random
number). Should not be a duplicate.
21. data_date character The date to which the data pertains to. Y
(DD-MM-YYYY) varying(10)
22. bag_count Integer The number of bags deposited into the Y
stack.

2.1.2.3 Request/Response JSON Parameter

Web Service Type: Transaction Service - 2


Web Service Name: STACK PROFILE
Method: POST
URL:<domain>/cfsp /stack_profile/{client_id}
Note: <domain> may be kept as a variable, since domain name may change.

Request JSON:

[ {
"lgd_state_code":11,
"lgd_district_code":123,
"depot_status":1,

Page 9 of 39
Central Food grains Storage Portal Version 1.0

"depot_code":" 1235",
"depot_name":" Sohan",
"stack_number":" 58796",
"stack_capacity":526.52,
"stack_created_on":"05-03-2022",
"stack_formed_on":"06-03-2022",
"stack_formation_quantity":526.52,
"storage_type":2,
"commodity":3,
"marketing_season":"2022-2022",
"crop_year":"2022 ",
"crop_type_id":2,
"bag_type":3,
"categorization_type":1,
"opening_balance":1234.56,
"closing_balance":222.22,
"transaction_reference_id":“111234567891”,
"data_date":"14-03-2022",
"bag_count ":1
} ]

Response JSON:

{
"data": {
"client_id": "1",
"transaction_id": "111234567891",
"service_code": "STACKPROFILE",
"transaction_status": "SUCCESS",
"transaction_remarks": "Data Uploaded",
"data_landing_timestamp": "2022-03-31 09:47:37.895",
"acknowledgement_no": "310320221232125"
},
"message": "Stack Profile saved successfully.",
"status": 200
}

2.1.3 Web Service for State application to push the inward details of Truck and inflow into
stack.

INFLOW

Page 10 of 39
Central Food grains Storage Portal Version 1.0

This CFSP API will consume the details of Truck-wise information and the inflow into the stacks. The
data shall be pushed by State storage application to central CFSP Server.

Frequency: For every day / date of inflow into the depot

2.1.3.1 Authorization Setup


Header Value
Client Id Same client id which is specified by CFSP
Client Password Same client password which is specified by CFSP
2.1.3.2 Input JSON Parameter

S. Parameter Data Type Description/Purpose Requir


No. ed?

HEADER
1. lgd_state_code integer LGD State Code of depot / godown in which Y
inflow has happened.
2. lgd_district_code integer LGD District code of depot / godown in Y
which inflow has happened.
3. depot_status integer Whether depot is active or inactive? Y
1. Active
2. Inactive
4. depot_code character Depot Code; as maintained in the State Y
varying(99) storage application.
5. depot_name character Depot name. Y
varying(99)
6. transaction_reference_id character Transaction reference number to be tagged Y
varying(12) with every record pushed by State
application (2 digit LGD state code (If LGD
state code is single digit, prefix with ‘0’ + 10
digit running number / random number).
Should not be a duplicate.
7. data_date character The date to which the data pertains to. Y
(DD-MM-YYYY) varying(10)
CHILD DATA
8. truck_number character Truck number. Y
varying(20)
9. truck_chit character Truck chit reference or similar reference, Y/O
varying(20) generated by the State application to be
provided.
10. net_quantity Double Net weight of the commodity received at the Y
(in Qtl.Kgs.) weigh bridge i.e. gross weight of the truck
minus (tare weight of the truck + tare weight
of the bags)
11. inflow_source Integer Source from which, the stock is received in Y
the stack/depot.

Page 11 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

1. Procurement centre
2. Miller
3. Inter-depot transfer
4. Other
12. stack_number character Stack Number or Stack ID in which quantity Y
varying(99) is off-loaded.
13. inflow_quantity Double Net Quantity of the commodity deposited in Y
(in Qtl.Kgs.) the stack during every receipt into the
respective stack / stack under consideration.
14. commodity Integer The commodity which is stored in the stack. Y
The code of commodities can be obtained
through the master service of commodity.
The commodity codes are maintained at the
central server.

Wheat
Rice-Raw-Grade A (RRA)
Rice-Raw-Common (RRC)
Rice-Parboiled (PBR)
Fortified Rice (FR)
Paddy

15. marketing_season Integer The season to which the stacked commodity Y


belongs to.
1. KMS (Kharif marketing season)
2. RMS (Rabi marketing season)
16. crop_year character 2021-2022 (Financial Year) Y
varying(9)
17. crop_type_id integer 1. Kharif crop Y
2. Rabi crop
18. bag_type integer The type of bag within which the Y
commodity is stored in the stack. Master
available.
1. SBT (580)
2. SBT
3. HDPE

19. bag_count Integer The number of bags deposited into the Y


stack.

2.1.3.3 Request/Response JSON Parameter

Web Service Type: Transaction Service - 3

Page 12 of 39
Central Food grains Storage Portal Version 1.0

Web Service Name: INFLOW


Method: POST
URL:<domain>/cfsp /inflow/{client_id}
Note: <domain> may be kept as a variable, since domain name may change.

Request JSON:

[
[
{
"lgd_state_code": 1,
"lgd_district_code": 1,
"depot_status": 1,
"depot_code": "12345",
"depot_name": "ABC",
"data_date": "30-06-2021",
"truckstackinflowdetails": [
{
"truck_number": "ABC",
"truck_chit": "ABC",
"net_quantity": 1,
"inflow_source": 1,
"stack_number": "ABC",
"inflow_quantity": 1,
"commodity": 1,
"marketing_season": 1,
"crop_year": "2021-2022",
"crop_type_id": 1,
"bag_type": 1,
"bag_count": 1
}
],
"transaction_reference_id": "013212554875"
}
]
Response JSON:

{
"data": {
"client_id": "1",
"transaction_id": "111234567",
"service_code": "TRUCK-STACK-INFLOW",
"transaction_status": "SUCCESS",
"transaction_remarks": "Truck Stack inflow uploaded",

Page 13 of 39
Central Food grains Storage Portal Version 1.0

"data_landing_timestamp": "2022-02-08 09:47:37.895",


"acknowledgement_no": "080220221232125"
},
"message": "Truck Stack inflow data saved successfully.",
"status": 200
}

2.1.4 Web Service for State application to push the outward details of Truck and outflow
from stack.

OUTFLOW

This CFSP API will consume the details of Truck-wise information and the outflow from the stacks.
The data shall be pushed by State storage application to central CFSP Server.

Frequency: For every day / date of outflow from the depot

2.1.4.1 Authorization Setup

Header Value
Client Id Same client id which is specified by CFSP
Client Password Same client password which is specified by CFSP

2.1.4.2 Input JSON Parameter

S. Parameter Data Type Description/Purpose Requir


No. ed?

HEADER
1. lgd_state_code integer LGD State Code of depot / godown in which Y
outflow has happened.
2. lgd_district_code integer LGD District code of depot / godown in Y
which outflow has happened.
3. depot_status integer Whether depot is active or inactive? Y
1. Active
2. Inactive
4. depot_code character Depot Code; as maintained in the State Y
varying(99) storage application.
5. depot_name character Depot name. Y
varying(99)
6. transaction_reference_id character Transaction reference number to be tagged Y
varying(12) with every record pushed by State
application (2 digit LGD state code (If LGD

Page 14 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

state code is single digit, prefix with ‘0’ + 10


digit running number / random number).
Should not be a duplicate.
7. data_date character The date to which the data pertains to. Y
(DD-MM-YYYY) varying(10)

CHILD DATA
8. truck_number character Truck Number. Y
varying(20)
9. truck_chit Character Truck chit reference or similar reference, Y
varying(20) generated by the State application to be
provided.
10. net_quantity double Net weight of the commodity Y
(in Qtl.Kgs.) issued/dispatched at the weigh bridge i.e.
gross weight of the truck minus (tare
weight of the truck + tare weight of the
bags)
11. outflow_destination Integer Destination to which, the stock is issued or Y/O
dispatched.
1. Fair Price Shop
2. Miller
3. Inter-depot transfer
4. Other
12. stack_number character Stack Number or Stack ID from which the Y
varying(99) stock is withdrawn.
13. outflow_quantity double Net quantity of the commodity withdrawn Y
(in Qtl.Kgs.) from the respective stack / stack in
consideration, during every issue/dispatch.
14. outflow_scheme Integer The scheme against which the outflow has Y
happened.
1. Central Scheme
2. State Scheme
3. Other
15. commodity Integer The commodity which is withdrawn from Y
the stack. The code of commodities can be
obtained through the master service of
commodity. The commodity codes are
maintained at the central server.

Wheat
Rice-Raw-Grade A (RRA)
Rice-Raw-Common (RRC)

Page 15 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

Rice-Parboiled (PBR)
Fortified Rice (FR)
Paddy

16. marketing_season Integer The season to which the commodity issued Y


/ dispatched belongs to.
1. KMS (Kharif marketing season)
2. RMS (Rabi marketing season)
17. crop_year character 2021-2022 (Financial Year) Y
varying(9)
18. crop_type_id integer 1. Kharif crop Y
2. Rabi crop
19. bag_type integer The type of bag within which the Y
commodity is issued/dispatched. Master
available.
1. SBT (580)
2. SBT
3. HDPE

20. bag_count Integer The number of bags withdrawn from the


stack.

2.1.4.3 Request/Response JSON Parameter

Web Service Type: Transaction Service - 4


Web Service Name: OUTFLOW
Method: POST
URL:<domain>/cfsp /outflow/{client_id}
Note: <domain> may be kept as a variable, since domain name may change.

Request JSON:

[
{
"lgd_state_code": 1,
"lgd_district_code": 1,
"depot_status": 1,
"depot_code": "12345",
"depot_name": "ABC",
"data_date": "30-06-2021",
"truckstackoutflowdetails": [
{
"truck_number": "ABC",

Page 16 of 39
Central Food grains Storage Portal Version 1.0

"truck_chit": "ABC",
"net_quantity": 1,
"outflow_destination": 1,
"stack_number": "ABC",
"outflow_quantity": 1,
"outflow_scheme": 1,
"commodity": 1,
"marketing_season": 1,
"crop_year": "2021-2022",
"crop_type_id": 1,
"bag_type": 1,
"bag_count": 1
}
],
"transaction_reference_id": "013212554875"
}
]

Response JSON:

{
"data": {
"client_id": "1",
"transaction_id": "111234567",
"service_code": "TRUCK-STACK-OUTFLOW",
"transaction_status": "SUCCESS",
"transaction_remarks": "Truck Stack outflow uploaded",
"data_landing_timestamp": "2022-02-08 09:47:37.895",
"acknowledgement_no": "080220221232125"
},
"message": "Truck Stack inflow data saved successfully.",
"status": 200
}

2.1.5 Web Service for State application to push the details of Stack Gain/Loss Summary.

STACK - GAIN - LOSS

This CFSP API pertains only to those stacks which get killed consequent to issues / dispatches. This
API will consume the details of Gain Loss details pushed by State storage application to central CFSP
Server.

Frequency: As and when the stacks get killed

Page 17 of 39
Central Food grains Storage Portal Version 1.0

2.1.5.1 Authorization Setup


Header Value
Client Id Same client id which is specified by CFSP
Client Password Same client password which is specified by CFSP

2.1.5.2 Input JSON Parameter

S. Parameter Data Type Description/Purpose Requir


No. ed?

1. lgd_state_code integer LGD State Code of depot / godown Y

2. lgd_district_code integer LGD District code of depot / godown Y

3. depot_status integer Whether depot is active or inactive? Y


1. Active
2. Inactive
4. depot_code character Depot Code; as maintained in the State Y
varying(99) storage application.
5. depot_name character Depot name. Y
varying(99)
6. stack_number character Stack Number or Stack ID of the stack Y
varying(99) which got killed.
7. stack_created_on character Date on which the stack was created. Y
(DD-MM-YYYY) varying(10)
8. stack_formed_on character Date on which the stack was fully formed. Y
(DD-MM-YYYY) varying(10)
9. stack_formation_quantity double Quantity of stocks stored in the fully Y
(in Qtl.Kgs.) formed stack as on stack formation date.
10. outflow_quantity double Quantity of stocks issued / dispatched from Y
(in Qtl.Kgs.) the stack i.e. the cumulative quantity since
the formation of the stack, which got killed.
11. commodity Integer The commodity which was stored in the Y
stack which got killed. The code of
commodities can be obtained through the
master service of commodity. The
commodity codes are maintained at the
central server.

Wheat
Rice-Raw-Grade A (RRA)
Rice-Raw-Common (RRC)
Rice-Parboiled (PBR)
Fortified Rice (FR)
Paddy

Page 18 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

12. marketing_season Integer The season to which the commodity which Y


was stored in the stack which got killed.
1. KMS (Kharif marketing season)
2. RMS (Rabi marketing season)
13. crop_year character 2021-2022 (Financial Year) Y
varying(9)
14. crop_type_id integer 1. Kharif crop Y
2. Rabi crop
15. bag_type integer The type of bag which was stored in the Y
stack which got killed. Master available.
1. SBT (580)
2. SBT
3. HDPE

16. bag_count Integer Count of bags which was issued / Y


dispatched from the stack which got killed.
17. stack_killed_on character Date on which the stack got killed Y
(DD-MM-YYYY) varying(10) (exhausted)
18. loss_quantity double Quantity of storage loss in the stack. Y/O
(in Qtl.Kgs.)
19. gain_quantity double Quantity of storage gain in the stack. Y/O
(in Qtl.Kgs.)
20. transaction_reference_id character Transaction reference number to be tagged Y
varying(12) with every record pushed by State
application (2 digit LGD state code (If LGD
state code is single digit, prefix with ‘0’ + 10
digit running number / random number).
Should not be a duplicate.
21. data_date character The date to which the data pertains to. Y
(DD-MM-YYYY) varying(10)

2.1.5.3 Request/Response JSON Parameter

Web Service Type: Transaction Service - 5


Web Service Name: STACK GAIN LOSS
Method: POST
URL:<domain>/cfsp /stack_gain_loss/{client_id}
Note: <domain> may be kept as a variable, since domain name may change.

Request JSON:

[ {

Page 19 of 39
Central Food grains Storage Portal Version 1.0

"lgd_state_code":11,
"lgd_district_code":123,
"depot_status":1,
"depot_code":"123",
"depot_name":" Sohan",
"stack_number":"12563",
"stack_created_on":"03-03-2022",
"stack_formed_on":"04-03-2022",
"stack_formation_quantity":526.523,
"outflow_quantity":452.56,
"commodity":2,
"marketing_season":1,
"crop_year":"2022-2023",
"crop_type_id":2,
"bag_type":2,
"bag_count":35,
"stack_killed_on":"14-03-2022",
"loss_quantity":56.255,
"gain_quantity":859.57,
"transaction_reference_id":"111234567891",
"data_date":"14-03-2022"
}]

Response JSON:

{
"data": {
"client_id": "1",
"transaction_id": "111234567891",
"service_code": "GAIN-LOSS",
"transaction_status": "SUCCESS",
"transaction_remarks": "Gain Loss data uploaded",
"data_landing_timestamp": "2022-02-08 09:47:37.895",
"acknowledgement_no": "080220221232125"
},
"message": "Gain Loss data saved successfully.",
"status": 200
}

2.1.6 Web Service for State application to push the details of Infestation details.

Infestation

Page 20 of 39
Central Food grains Storage Portal Version 1.0

This CFSP API will consume the details of Infestation related data pushed by State storage
application to central CFSP Server.

Frequency: As and when the stacks are identified as infested

This CFSP API will consume the details of Infestation related data pushed by State storage
application to central CFSP Server.

2.1.6.1 Authorization Setup


Header Value
Client Id Same client id which is specified by CFSP
Client Password Same client password which is specified by CFSP

2.1.6.2 Input JSON Parameter


S. Parameter Data Type Description/Purpose Requir
No. ed?

1. lgd_state_code integer LGD State Code of depot / godown Y

2. lgd_district_code integer LGD District code of depot / godown Y

3. depot_status integer Whether depot is active or inactive? Y


1. Active
2. Inactive
4. depot_code character Depot Code; as maintained in the State Y
varying(99) storage application.
5. depot_name character Depot name. Y
varying(99)
6. stack_number character Stack Number or Stack ID of the stack Y
varying(99) which was treated.
7. stack_created_on character Date on which the stack was created. Y
(DD-MM-YYYY) varying(10)
8. stack_formed_on character Date on which the stack was fully formed. Y
(DD-MM-YYYY) varying(10)
9. stack_formation_quantity double Quantity of stocks stored in the fully Y
(in Qtl.Kgs.) formed stack as on date of formation of
stack.
10. quantity double Quantity of stocks stored in the stack Y
(in Qtl.Kgs.) during the treatment.
11. commodity Integer The commodity which was stored in the Y
stack during the treatment. The code of
commodities can be obtained through the
master service of commodity. The
commodity codes are maintained at the
central server.

Page 21 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

Wheat
Rice-Raw-Grade A (RRA)
Rice-Raw-Common (RRC)
Rice-Parboiled (PBR)
Fortified Rice (FR)
Paddy

12. marketing_season Integer The season to which the commodity which Y


was stored in the stack.
1. KMS (Kharif marketing season)
2. RMS (Rabi marketing season)
13. crop_year character 2021-2022 (Financial Year) Y
varying(9)
14. crop_type_id integer 1. Kharif crop Y
2. Rabi crop
15. bag_type integer The type of bag which was stored in the Y
stack during treatment. Master available.
1. SBT (580)
2. SBT
3. HDPE

16. bag_count Integer Count of bags stored in the stack at the Y


time of identification of infestation.
17. infestation_type Integer Infestation Type Y
0 - Clear
1 - Few
2 -Heavy
18. categorization_type integer Category of stocks Y

1. Issuable – Category A
2. Issuable – Category B
3. Issuable – Category C
4. Issuable – Category D

8. Non-Issuable – Feed 1
9. Non-Issuable – Feed 2
10. Non-Issuable – Feed 3

14. Industrial Use


15. Manure
16. Fit for dumping
19. transaction_reference_id character Transaction reference number to be Y
varying(12) tagged with every record pushed by State
application (2 digit LGD state code (If LGD

Page 22 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

state code is single digit, prefix with ‘0’ +


10 digit running number / random
number). Should not be a duplicate.
20. data_date character The date to which the data pertains to. Y
(DD-MM-YYYY) varying(10)

2.1.6.3 Request/Response JSON Parameter

Web Service Type: Transaction Service - 6


Web Service Name: INFESTATION
Method: POST
URL:<domain>/cfsp /infestation/{client_id}
Note: <domain> may be kept as a variable, since domain name may change.

Request JSON:
[ {
"lgd_state_code":11,
"lgd_district_code":123,
"depot_status":1,
"depot_code":"123",
"depot_name":" Sohan",
"stack_number":"12563",
"stack_created_on":"03-03-2022",
"stack_formed_on":"04-03-2022",
"stack_formation_quantity":526.523,
"quantity":326.523,
"commodity":2,
"marketing_season":1,
"crop_year":"2022-2023",
"crop_type_id":2,
"bag_type":2,
"bag_count":35,
"infestation_type":2,
"categorization_type":8,
"transaction_reference_id":“111234567891”,
"data_date":"14-03-2022"
} ]

Response JSON:

Page 23 of 39
Central Food grains Storage Portal Version 1.0

{
"data": {
"client_id": "1",
"transaction_id": "111234567891",
"service_code": "INFESTATION ",
"transaction_status": "SUCCESS",
"transaction_remarks": "Infestation data uploaded",
"data_landing_timestamp": "2022-02-08 09:47:37.895",
"acknowledgement_no": "080220221232125"
},
"message": "Infestation Details data saved successfully.",
"status": 200
}

2.1.7 Web Service for State application to push the details of Treatment details.

Treatment

This CFSP API will consume the details of Treatment related data pushed by State storage
application to central CFSP Server.

Frequency: As and when the stacks are treated

This CFSP API will consume the details of Treatment related data pushed by State storage
application to central CFSP Server.

2.1.7.1 Authorization Setup

Header Value
Client Id Same client id which is specified by CFSP
Client Password Same client password which is specified by CFSP

2.1.7.2 Input JSON Parameter

S. Parameter Data Type Description/Purpose Requir


No. ed?

1. lgd_state_code integer LGD State Code of depot / godown Y

2. lgd_district_code integer LGD District code of depot / godown Y

3. depot_status integer Whether depot is active or inactive? Y


3. Active
4. Inactive

Page 24 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

4. depot_code character Depot Code; as maintained in the State Y


varying(99) storage application.
5. depot_name character Depot name. Y
varying(99)
6. stack_number character Stack Number or Stack ID of the stack Y
varying(99) which was treated.
7. stack_created_on character Date on which the stack was created. Y
(DD-MM-YYYY) varying(10)
8. stack_formed_on character Date on which the stack was fully Y
(DD-MM-YYYY) varying(10) formed.
9. stack_formation_quantity double Quantity of stocks stored in the fully Y
(in Qtl.Kgs.) formed stack as on date of formation of
stack.
10. quantity double Quantity of stocks stored in the stack Y
(in Qtl.Kgs.) during the treatment.
11. commodity Integer The commodity which was stored in the Y
stack during the treatment. The code of
commodities can be obtained through
the master service of commodity. The
commodity codes are maintained at the
central server.

Wheat
Rice-Raw-Grade A (RRA)
Rice-Raw-Common (RRC)
Rice-Parboiled (PBR)
Fortified Rice (FR)
Paddy

12. marketing_season Integer The season to which the commodity Y


which was stored in the stack.
3. KMS (Kharif marketing season)
4. RMS (Rabi marketing season)
13. crop_year character 2021-2022 (Financial Year) Y
varying(9)
14. crop_type_id integer 3. Kharif crop Y
4. Rabi crop
15. bag_type integer The type of bag which was stored in the Y
stack during treatment. Master
available.
4. SBT (580)
5. SBT

Page 25 of 39
Central Food grains Storage Portal Version 1.0

S. Parameter Data Type Description/Purpose Requir


No. ed?

6. HDPE

16. bag_count Integer Count of bags stored in the stack at the Y


time of identification of infestation.
17. treatment_type Integer Treatment Type Y
1 - Prophylactic
2 -Curative
18. date_of_treatment character Date on which the treatment was done. Y
(DD-MM-YYYY) varying (10)

19. date_of_availability_for_issue character Date from which stock can be issued / Y


(DD-MM-YYYY) varying (10) dispatched from the stack.

20. categorization_type integer Category of stocks Y

1. Issuable – Category A
2. Issuable – Category B
3. Issuable – Category C
4. Issuable – Category D

8. Non-Issuable – Feed 1
9. Non-Issuable – Feed 2
10. Non-Issuable – Feed 3

14. Industrial Use


15. Manure
16. Fit for dumping
21. transaction_reference_id character Transaction reference number to be Y
varying(12) tagged with every record pushed by
State application (2 digit LGD state code
(If LGD state code is single digit, prefix
with ‘0’ + 10 digit running number /
random number). Should not be a
duplicate.
22. data_date character The date to which the data pertains to. Y
(DD-MM-YYYY) varying(10)

2.1.7.3 Request/Response JSON Parameter

Web Service Type: Transaction Service - 7


Web Service Name: TREATMENT
Method: POST
URL:<domain>/cfsp /treatment/{client_id}

Page 26 of 39
Central Food grains Storage Portal Version 1.0

Note: <domain> may be kept as a variable, since domain name may change.

Request JSON:
[ {
"lgd_state_code":11,
"lgd_district_code":123,
"depot_status":1,
"depot_code":"123",
"depot_name":" Sohan",
"stack_number":"12563",
"stack_created_on":"03-03-2022",
"stack_formed_on":"04-03-2022",
"stack_formation_quantity":526.523,
"quantity":326.523,
"commodity":2,
"marketing_season":1,
"crop_year":"2022-2023",
"crop_type_id":2,
"bag_type":2,
"bag_count":35,
"treatment_type":"1",
"date_of_treatment":"13-03-2022",
"date_of_availability_for_issue":"14-03-2022",
"categorization_type":8,
"transaction_reference_id":“111234567891”,
"data_date":"14-03-2022"
} ]

Response JSON:

{
"data": {
"client_id": "1",
"transaction_id": "111234567891",
"service_code": "TREATMENT",
"transaction_status": "SUCCESS",
"transaction_remarks": "Treatment data uploaded",
"data_landing_timestamp": "2022-02-08 09:47:37.895",
"acknowledgement_no": "080220221232125"
},
"message": "Treatment Details data saved successfully.",
"status": 200

Page 27 of 39
Central Food grains Storage Portal Version 1.0

Page 28 of 39
Central Food grains Storage Portal Version 1.0

3. APIs for Master

For the sake of uniformity, relevant Masters like State code, LGD District Code, depot type, LGD
Village master, LGD Tehsil Master etc as per CFSP Central Server. This master details and the
relevant ID’s/Code can be access through URL http://cfsp.nic.in/cfsp/swagger_cfsp

Master 1: Commodity
S. No. Parameter Data Type Description/Purpose Required

1 commodity_id Integer Y

2 commodity_name character Paddy Y


varying(20) Wheat
Bajra
Barley
Jowar
Ragi
Maize
Tur Dal
Arhar Dal
Rice-Raw Common
Rice-Raw Grade A
Rice Parboiled Common
Rice Parboiled Grade A
Coarse Grains
3 active Integer Active or Inactive Y
0-Inactive
1-Active

Web Service Type: Master Web Service 1


Web Service Name: Commodity
Method: GET
URL:<domain>/cfsp/commodity
Note: <domain> may be kept as a variable, since domain name may change.
Response JSON:
{
"commodity_id": "1",
" commodity_name": "Wheat"
},
{
"commodity_id": "2",
" commodity_name": "Rice"
}

Page 29 of 39
Central Food grains Storage Portal Version 1.0

Master 2: Bag Type


S. No. Parameter Data Type Description/Purpose Required

1 bag_type_id Integer Y

2 bag_type_name character The type of bag within Y


varying(20) which the commodity is
stored in the stack.
1. SBT (580)
2. SBT
3. HDPE
3 tare_weight double Tare weight of the bag Y

4 active Integer Active or Inactive Y


0-Inactive
1-Active

Web Service Type: Master Web Service 2


Web Service Name: Bag Type
Method: GET
URL:<domain>/cfsp/bagtype
Note: <domain> may be kept as a variable, since domain name may change.

Response JSON:

{
" bag_type_id ": "1",
" bag_type_name ": "SBT(580)"
“tare_weight”:”0.500”
},
{
" bag_type_id ": "2",
" bag_type_name ": "SBT"
“tare_weight”:”0.525”
}

Master 3: LGD State Master


S. No. Parameter Data Type Description/Purpose Required

1 lgd_state_code integer Y

2 lgd_state_name_en character Y
varying(99)

Page 30 of 39
Central Food grains Storage Portal Version 1.0

3 state_name_ll character O
varying(99)
4 Active integer Active or Inactive Y
0-Inactive
1-Active

Web Service Type: Master Web Service 3


Web Service Name: State Master
Method: GET
URL:<domain>/cfsp/states
Note: <domain> may be kept as a variable, since domain name may change.

Response JSON:

{
" lgd_state_code": "1",
" lgd_state_name_en": "Jammu & kashmir",
"state_name_ll": "Jammu & kashmir"
}

Master 4: LGD District Master


S. No. Parameter Data Type Description/Purpose Required

1 lgd_state_code integer Y

2 lgd_district_code integer Y

3 lgd_district_name_en character Y
varying(99)
4 district_name_ll character O
varying(99)
5 Active integer Active or Inactive Y
0-Inactive
1-Active

Web Service Type: Master Web Service 4


Web Service Name: District Master
Method: GET
URL:<domain>/cfsp/district/{state_code}
Note: <domain> may be kept as a variable, since domain name may change.

Page 31 of 39
Central Food grains Storage Portal Version 1.0

Response JSON:

{
" lgd_state_code": "1",
" lgd_district_code": "656",
" lgd_district_name_en": "TEST",
" district_name_ll": "TEST"
}

Master 5: LGD Tehsil Master (sub district master/taluk/mandal)


S. No. Parameter Data Type Description/Purpose Required

1 lgd_state_code integer Y

2 lgd_district_code integer Y

3 lgd_tehsil_code integer Y

4 lgd_tehsil_name_en character Y
varying(99)
5 tehsil_name_ll character O
varying(99)
6 active integer Active or Inactive Y
0-Inactive
1-Active

Web Service Type: Master Web Service 5


Web Service Name: Tehsil Master
Method: GET
URL:<domain>/cfsp/tehsil/{state_code}
Note: <domain> may be kept as a variable, since domain name may change.

Response JSON:

{
" lgd_state_code": "1",
" lgd_district_code": "123",
" lgd_tehsil_code": "123",
" lgd_tehsil_name_en": "Jammu",
" tehsil_name_ll": "Jammu”
}

Page 32 of 39
Central Food grains Storage Portal Version 1.0

Master 6: LGD Village Master


S. No. Parameter Data Type Description/Purpose Required

1 lgd_state_code integer Y

2 lgd_district_code integer Y

3 lgd_tehsil_code integer Y

4 lgd_village_code integer Y

5 lgd_village_name_en character Y
varying(99)
6 village_name_ll character O
varying(99)
7 Active integer Active or Inactive Y
0-Inactive
1-Active

Web Service Type: Master Web Service 6


Web Service Name: Village Master
Method: GET
URL:<domain>/cfsp/village/{state_code}
Note: <domain> may be kept as a variable, since domain name may change.

Response JSON:
{
" lgd_state_code": "1",
" lgd_district_code": "123",
" lgd_tehsil_code": "123",
" lgd_village_code": "123",
" lgd_village_name_en": "Jammu”,
" village_name_ll": "Jammu”
}

Page 33 of 39
Central Food grains Storage Portal Version 1.0

4. API’s URL and Token Generation

NIC has developed a tool using Swagger, for testing the API's and token generation. For token
generation the following path is to be followed by the respective State:

 Visit the URL http://cfsp.nic.in/cfsp/swagger_cfsp


 Reach the service --- Authentication Service -> /login
 Click on 'Try it out"
 In the Schema dialog box, State user shall have to provide the user name and password as
provided to them by FCI / NIC.
 After entering the provided username and password, click on "Execute"
 The generated token will be displayed in the "Response Body" dialog box.
 Copy the token which is within double quotes.
 Scroll up to reach the top of the page.
 The Authorize button shall be visible with open lock, which indicates an unauthorized
service user.
 Click on the "Authorize" button.
 In the dialog box which shall appear, paste the token, and click on 'Authorize'.
 Now, the user is authorized. User should click on 'Close' and not on "Logout"
 Now, the user is authorized to use any service both for posting and getting data.

Before Pushing data to CFSP server token has to be generated. For this, hit the login
service for authentication and this service will generate the token in response.
The generated token has to be passed in the header under Authorization tag.

**Important: Please put Bearer before token.

For example:
Bearer
eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhbml0YXNoYXJtYSIsImV4cCI6MTYzMjMwNDExOSwia
WF0IjoxNjMyMjg2MTE5fQ.LuMMmJ9dPHyIl8sPUOqoDu09ETCUI8T651gAebusGhV-
U_s8F6JxIFGQOQxj09tf4Y00EwlbOWvdugzLTNb-Yw

Page 34 of 39
Central Food grains Storage Portal Version 1.0

5. Sample URL’s

Sl. Webservice Service URL Transactional Method


No. Name /Master
1. DEPOT <domain>/cfsp /depot_profile/{client_id} Transactional POST
PROFILE

2. STACK <domain>/cfsp /stack_profile/{client_id} Transactional POST


PROFILE

3. INFLOW <domain>/cfsp /inflow/{client_id} Transactional POST

4. OUTFLOW <domain>/cfsp /outflow/{client_id} Transactional POST

5. STACK – GAIN <domain>/cfsp Transactional POST


– LOSS /stack_gain_loss/{client_id}

6. INFESTATION <domain>/cfsp /infestation/{client_id} Transactional POST

7. TREATMENT <domain>/cfsp /treatment/{client_id} Transactional POST

8. COMMODITY <domain>/cfsp/commodity Master GET

9. BAG TYPE <domain>/cfsp/bagtype Master GET

10. STATE <domain>/cfsp/states Master GET


MASTER

11. DISTRICT <domain>/cfsp/district/{state_code} Master GET


MASTER

12. TEHSIL <domain>/cfsp/tehsil/{state_code} Master GET


MASTER

13. VILLAGE <domain>/cfsp/village/{state_code} Master GET


MASTER

¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥

Page 35 of 39

You might also like