Reporting provides a set of services to create, process, and retrieve either CSV extracts or XML extracts from CLAIMS Direct. Reports are available for six months after they are created. Please download any reports older than six months that you wish to keep. Reports can be downloaded through the API using https://cdws21.ificlaims.com/reports/<report-id>/<report-name>.
In brief, you can use the interface to do the following:
- /report/create: create a report – defining the data selection criteria
- /report/queue: queue the report – defining the processing and packaging requirements for the report delivery
- /report/status: check the status of the report progress – from queued to complete
- /report/list: get a list of current reports
- /report/detailsdetail: get a list of the details related to a particular report
- /report/delete: delete a report
- /report/columns: get a list of the columns supported by CSV reporting
Note that whereas CSV reporting does allow you to select the columns or fields that you want included in the report, the XML output assumes you want the complete XML record. Also note that whereas while the XML output does allow allows for batching of the output into multiple files in order to keep file sizes manageable, the CSV report assumes you want everything in one file.
The details of the service calls are below.
/report/create
Method(s) | GET | POST |
---|
Path | /report/create |
Parameter |
| |
| @name | String: ex. test-report-01 | Report name |
. Special Unix/Linux characters may not be used in report names. Valid characters include alphas, numerics, dashes, and underscores. |
| @type | String: ex. csv | Report type, one of 'csv' or 'xml' (default=xml) |
|
| @source | String: ex. search | Report source, one of 'search', 'list' or 'table' (default=list) |
|
| @criteria | String: ex. pnctry:us AND solar | Report criteria. Depending on @source, this will be either a valid |
SOLR Solr search query, a space, comma or new-line-separated list of ucids or an existing schema-qualified DWH table name containing the required column ucid. |
Warning
Icon Warning |
---|
For long ucid lists and complicated queries, the POST method should be used. |
|
| | |
| @solrparams | unused, set internally |
| | @solrurl | unused, set internally |
| The following options pertain to @type = csv |
|
| @csv.cols | String: ex. c1,c2 | Comma-separated list of columns to include. Columns will be output in order given. Currently available columns: Info |
---|
| Columns containing multiple values will be separated by the '|' character, e.g. US | EP | WO |
Column | Description |
---|
document-ucid | Document identifier (ucid) | document-country | Country of publication | document-number | Patent/ |
|
Publication publication number | document-kind | Publication kind code | document-date | Date of publication (YYYYMMDD) | document-year | Year of publication (YYYY) |
|
of publication | application-ucid | Application filing identifier (ucid) | application-country | Filing country | application-number | Filing number | application-kind | Filing kind code | application-date | Date of filing (YYYYMMDD) | application-year | Year of filing (YYYY) | priority-number | Priority numbers (ucids) | priority-country | Priority countries | priority-date | Priority filing dates (YYYYMMDD) | priority-year | Priority filing years (YYYY) | us-class-primary | Primary US classification | us-class | All US classifications | cpc | CPC |
|
ipcr | cpc-first-inventive | First inventive CPC | ipcr | IPCR | ipc | IPC | ecla | ECLA | f-terms | F-terms | patent-citations | Patent citations | non-patent-citations | Non-patent |
|
- citations | forward-citations | Forward citations | related-applications | Related applications | assignee-applicant |
|
Assignee Applicantsapplicants | epo-assignee-applicant |
|
DocDB Assignees Applicantsapplicants | inventor | Inventors | agent | Agents | correspondent | Correspondent | examiner | Examiner | pct-application-number | PCT filing number (ucid) | designated-states | EP and PCT designated states | abstract | English |
|
Abstract abstract or, if no English abstract exists, the abstract in the language of publication | first-claim | First claim | english-claims | Claims in English | original-claims | Claims in language of publication | espacenet-link | URL to espacenet | simple-family | List of ucids sharing the same family ID, as assigned by |
|
DocDBDOCDB | inpadoc-family | Extended family | legal-status | Legal status | title | English language title or, if not present, title in publication language | ifi-expiration | IFI |
|
Patent Expirationanticipated patent expiration date | ifi-status | IFI |
|
Patent Statuspatent status | ifi-publication-type | IFI |
|
Publication Typepublication type | ifi-adj-expiration | IFI |
|
Adjusted Patent Expirationadjusted patent expiration date | ifi-assignee | IFI |
|
Assigneeassignee | ifi-assignee-original | Original, as published, assignee | ifi-assignee-current | Current IFI assignee | ifi-assignee-probable | Probable IFI assignee | family-id |
|
DocDBDOCDB-assigned simple family integer identifier | load-id | modified-load-id | date-produced | Date on which CLAIMS Direct XML was produced |
|
|
| @csv.header | Bool: ex. 1 | [ 0 | 1 ] Include column headers |
|
| @csv.nonl | Bool: ex. 1 | [ 0 | 1 ] Replace new lines (nl) with spaces |
|
| @csv.maxcolsize | Integer: ex. 32 | The maximum number of bytes allowed per column (overflow will be truncated). This value is assumed to be Kilobytes. |
Example:
...
| @csv.datefmt | String. Available Options: yyyy-mm-dd dd/mm/yyyy mm/dd/yyyy yyyymmdd Ex. csv.datefmt=mm/dd/yyyy | (v3.9.1) The format of date output for the CSV columns: Publication Date, Application Date, Priority Date, Date Produced, IFI Expiration and IFI Adjusted Expiration dates. |
Example:
Code Block |
---|
|
wget -O- -q \
--header 'x-user:x' \
--header 'x-password:y' \
'https://cdws21.ificlaims.com/report/create?name=a-csv-report&type=csv&source=list&criteria=US-20140255094-A1,ES-2478140-A8,ES-2486245-T3'
|
Response JSON
Code Block |
---|
|
{
"status" : "success"
"time" : "0.015465",
"report" : {
"id" : "63cfdeb1-0162-444f-9ffa-a1ddd18de7d1"
},
}
|
@status | |
| @time | Internal request time in seconds |
|
| @report.id | Unique identifier of the report |
|
| @message | In case of error, this may optionally contain the reason for failure |
...
/report/queue
Method | GET |
---|
Path | /report/queue |
Parameter |
| |
| @id | String: ex. e16eebc9-6965... | Report identifier |
|
| @nthreads | Integer: ex. 4 | Maximum number of backend processes used to generate report (2, 4 or 8, default=4) |
|
| @batchsize | Integer: ex. 100 | Number of documents to process per thread (default=200) |
|
| @batchprefix | String: ex. my-prefix | Output file name(s) prefix. For example, running an xml report with @package_type=batched, output tar file will contain: <report-name>.tar: my-prefix.00000001.xml my-prefix.00000002.xml my-prefix.00000003.xml my-prefix.00000004.xml Default=batch |
|
| @package_type | String: ex. archived | Report package type. Valid types include: - single: output single file. For report type csv, this is the only available package_type, for report type xml, the output file will contain multiple XML documents
- archived: (xml only) output tar archive with predictable path to individual documents
- archived_attachments: (xml only) archived package including associated attachments
- batched: (xml only) output tar archive containing raw batches
|
|
| @package_suffix | Unused: generated internally based on package_type and package_compression | The following table shows the generated suffix: | | | |
---|
single | <report-name>.csv | .xml | <report-name>.gz | <report-name>.zip | archived | <report-name>.tar | <report-name>.tar.gz | <report-name>.tar.zip | batched | <report-name>.tar | <report-name>.tar.gz. | <report-name>.tar.zip |
|
|
| @package_compression | String: ex. gzip | Valid values are one of: __none__ (default), gzip or zip |
|
| @priority | Integer: ex. 1 | Setting a priority > 0 will prioritize processing of report higher. Default behavior is to process each report in order of en-queue. |
...
Example:
Code Block |
---|
|
wget -O- -q q \
--header 'x-user:x' \
--header 'x-password:y' \
'httphttps://cdws21.ificlaims.com/report/queue?id=99a479b9-4a73-4f27-b8b1-44b052844e23' |
Response JSON
Code Block |
---|
|
{
"status" : "success",
"time" : "0.064897"
"queue" : {
"id" : 257
},
}
|
|
| @queue.id | Report queue identifier (currently unused in other requests) |
|
| @message | In case of error, this may optionally contain the reason for failure |
/report/status
Method | GET |
---|
Path | /report/status |
Parameter |
| |
| @id | String: ex. e16eebc9-6965-41a4-9337-8f76d8953a89 | Report identifier |
...
Example:
Code Block |
---|
|
wget -O- \
--header 'x-user:x' \
--header 'x-password:y' \
'httphttps://cdws21.ificlaims.com/report/status?id=99a479b9-4a73-4f27-b8b1-44b052844e23' |
Response JSON
Code Block |
---|
{ |
{
"time" : " 0.041137",
"status" : "success",
"report" : {
"percent_complete" : "0.000",
"completed_status" : null,
"completed_stamp" : null,
"ndocs" : 0,
"completed_error" : null,
"ndocs_processed" : 0,
"running_status" : "queued",
"entered_stamp" : "2014-09-28 14:52:57",
"completed_url" : null
},
}
|
| |
| @message | In case of error, this may optionally contain the reason for failure |
|
| @report.entered_stamp | Time stamp when report was queued for processing |
|
| @report.running_status | Stage of processing: - queued
- preparing
- extracting
- packaging
|
complete |
| @report.completed_url | When complete, the url of package |
|
| @report.completed_status | success | error |
|
| @report.completed_error | If @completed_status == 'error', this may contain an optional error message pertaining to processing |
|
| @report.completed_stamp | Time stamp report processing completed |
|
| @report.ndocs | Total number of documents in report. Note: This value will be 0 until @running_status completes the preparation (preparing) stage. |
|
| @report.ndocs_processed | Total number of documents already processed |
|
| @report.percent_complete | Convenience value of @ndocs_processed / @ndocs as a floating point, e.g., 0.000 |
...
/report/list
Method | GET |
---|
Path | /report/list |
Parameter |
|
| @limit | Integer: ex. 50 | Limit number of items to return (reporting has an upper limit of 30K per batch because deep paging can |
produce odd results) place undue stress on the system) |
| @offset | Integer: ex. 0 |
Offset into returned list of items | Example:
Code Block |
---|
wget -O- \
--header 'x-user:x' \
--header 'x-password:y' \
'http://cdws21.ificlaims.com/report/list?limit=1' |
Response JSON
...
| Offset into returned list of items |
Example:
Code Block |
---|
|
wget -O- \
--header 'x-user:x' \
--header 'x-password:y' \
'https://cdws21.ificlaims.com/report/list?limit=1' |
Response JSON
Code Block |
---|
|
{
"time" : "0.010817",
"status" : "success",
"reports" : [
{
"batchprefix" : "batch",
"source" : "list",
"name" : "a-csv-report",
"solrurl" : "https://10.234.1.44:6000/alexandria-v2.1/alexandria",
"batchsize" : 200,
"completed_status" : null,
"package_compression" : "zip",
"package_sfx" : "csv",
"completed_stamp" : null,
"completed_error" : null,
"running_status" : "queued",
"solrparams" : null,
"batchprefixtype" : "batchcsv",
"sourceentered_stamp" : "list2014-09-28 14:52:57.15773",
"namecompleted_url" : "a-csv-report"null,
"solrurlid" : "http://10.234.1.44:6000/alexandria-v2.1/alexandria63cfdeb1-0162-444f-9ffa-a1ddd18de7d1",
"batchsizecriteria" : 200"US-20140255094-A1,ES-2478140-A8,ES-2486245-T3",
"completedpackage_statustype" : null"single",
"packagereport_compressionid" : "zip"276,
"package_sfxcsvopts" : "csv"csv.nonl=1&csv.cols=__all__&csv.maxcolsize=32768&csv.header=1",
"completed_stampnthreads" : null4,
"completeduser_errorid" : null4,
"runningprocess_statusid" : "queued"257,
"solrparamsndocs" : null0,
"type" : "csv",
"entered_stamp" : "2014-09-28 14:52:57.15773",
ndocs_processed" : 0
}
]
}
|
/report/detail
Method | GET |
---|
Path | /report/detail |
Parameter |
| Values | Description |
| @id | String: ex. e16eebc9-6965-41a4-9337-8f76d8953a89 | Report identifier |
Response JSON
Code Block |
---|
|
{
"completed_urltime" : null" 0.012368",
"id"status" : "63cfdeb1-0162-444f-9ffa-a1ddd18de7d1success",
"criteriareport" : "US-20140255094-A1,ES-2478140-A8,ES-2486245-T3",
{
"package_typename" : "singlea-csv-report",
"report_id"batchprefix" : 276"batch",
"csvoptssource" : "csv.nonl=1&csv.cols=__all__&csv.maxcolsize=32768&csv.header=1list",
"nthreadscompleted_status" : 4null,
"usercompleted_idstamp" : 4null,
"processpackage_idsfx" : 257"csv",
"ndocspackage_compression" : 0"zip",
"ndocscompleted_processederror" : 0null,
}
"solrurl" ]
}
|
/report/detail
Method | GET |
---|
Path | /report/detail |
Parameter | | Values | Description |
| @id | String: ex. e16eebc9-6965-41a4-9337-8f76d8953a89 | Report identifier |
Response JSON
Code Block |
---|
{
"time" : " 0.012368",
"status" : "success: "https://10.234.1.44:6000/alexandria-v2.1/alexandria",
"batchsize" : 200,
"completed_url" : null,
"criteria" : "US-20140255094-A1,ES-2478140-A8,ES-2486245-T3",
"report "tracker_id" : {"63cfdeb1-0162-444f-9ffa-a1ddd18de7d1",
"namereport_id" : "a-csv-report"276,
"batchprefixpackage_type" : "batchsingle",
"sourcesolrparams" : "list"null,
"completedrunning_status" : null"queued",
"completed_stamptype" : null"csv",
"packageentered_sfxstamp" : "csv2014-09-28 14:52:57.15773",
"package_compressionnthreads" : "zip"4,
"completeduser_errorid" : null4,
"solrurlprocess_id" : "http://10.234.1.44:6000/alexandria-v2.1/alexandria" 257,
"ndocs" : 0,
"batchsizendocs_processed" : 2000,
"completed_url" : null,
"criteria" : "US-20140255094-A1,ES-2478140-A8,ES-2486245-T3",
"tracker_id" : "63cfdeb1-0162-444f-9ffa-a1ddd18de7d1csvopts" : "csv.nonl=1&csv.cols=__all__&csv.maxcolsize=32768&csv.header=1"
},
}
|
/report/delete
Method | GET |
---|
Path | /report/delete |
Parameter |
| Values | Description |
| @id | String: ex. e16eebc9-6965-41a4-9337-8f76d8953a89 | Report identifier |
Response JSON
Code Block |
---|
|
{
"status" : "success",
"time" : " 0.010436"report_id,
}
|
/report/columns
Method | GET |
---|
Path | /report/columns |
Response JSON
Code Block |
---|
|
{
"time" : 276 " 0.008741",
"package_typestatus" : "singlesuccess",
"solrparamscolumns" : null,[
"running_status" : "queued"document-ucid",
"type" : "csv"document-country",
"entered_stamp" : "2014-09-28 14:52:57.15773document-number",
"nthreads" : 4document-kind",
"user_id" : 4document-date",
"process_id" : 257document-year",
"ndocs" : 0application-ucid",
"ndocs_processed" : 0application-country",
"csvopts" : "csv.nonl=1&csv.cols=__all__&csv.maxcolsize=32768&csv.header=1"
},
}
|
/report/delete
Method | GET |
---|
Path | /report/delete |
Parameter | | Values | Description |
| @id | String: ex. e16eebc9-6965-41a4-9337-8f76d8953a89 | Report identifier |
Response JSON
Code Block |
---|
{
"status" : "successapplication-number",
"application-kind",
"application-date",
"application-year",
"time" : " 0.010436priority-number",
}
|
/report/columns
Method | GET |
---|
Path | /report/columns |
Response JSON
Code Block |
---|
{
"time" : " 0.006634priority-country",
"status" : "successpriority-date",
"columns" : [priority-year",
"documentus-class-numberprimary",
"documentus-countryclass",
"document-kindcpc",
"documentcpc-first-dateinventive",
"document-yearipcr",
"application-numberipc",
"application-dateecla",
"priorityf-numberterms",
"prioritypatent-countrycitations",
"priorityforward-datecitations",
"prioritynon-patent-yearcitations",
"titlerelated-applications",
"usassignee-class-primaryapplicant",
"usepo-assignee-classapplicant",
"cpcinventor",
"ipcragent",
"ipccorrespondent",
"eclaexaminer",
"fpct-application-termsnumber",
"patentdesignated-citationsstates",
"forward-citationsabstract",
"nonfirst-patent-citationsclaim",
"relatedenglish-applicationsclaims",
"assigneeoriginal-applicantclaims",
"standardizedespacenet-assignee-applicantlink",
"simple-family"inventor",
"agentinpadoc-family",
"correspondentlegal-status",
"examinertitle",
"pctifi-application-numberexpiration",
"designatedifi-statesstatus",
"abstractifi-publication-type",
"englishifi-adj-claimsexpiration",
"originalifi-claimsassignee",
"espacenetifi-assignee-linkoriginal",
"simpleifi-assignee-familycurrent",
"inpadocifi-assignee-familyprobable",
"legalfamily-statusid",
"ifiload-statusid",
"ifidate-expirationproduced"
]
}
|