OpenAI #Files: List
Lists the files on the OpenAI API server. For all files belonging to the user organisation, the four attributes File ID, Purpose, File Size and File Name are stored as TSV text.
Configs for this Auto Step
- AuthzConfU1
- U1: Select HTTP_Authz Setting (Secret API Key as “Fixed Value”) *
- SelectConfA1
- A1: Select STRING that stores TSV (update) *
- StrConfU2
- U2: Set OpenAI Organization ID (“org-xxxx”)#{EL}
Script (click to open)
// GraalJS standard mode Script Script (engine type: 3)
// cf. 'engine type: 2': "GraalJS Nashorn compatible mode" (renamed from "GraalJS" at 20230526)
//////// START "main()" /////////////////////////////////////////////////////////////////
main();
function main(){
////// == Config Retrieving / 工程コンフィグの参照 ==
const strAuthzSetting = configs.get( "AuthzConfU1" ); /// REQUIRED
engine.log( " AutomatedTask Config: Authz Setting: " + strAuthzSetting );
const strOrgId = configs.get( "StrConfU2" ); // NotRequired
engine.log( " AutomatedTask Config: OpenAI-Organization: " + strOrgId );
const strPocketTsv = configs.getObject( "SelectConfA1" ); /// REQUIRED
////// == Data Retrieving / ワークフローデータの参照 ==
// (Nothing. Retrieved via Expression Language in Config Retrieving)
////// == Calculating / 演算 ==
//// OpenAI API > Documentation > API REFERENCE > FILES > List files
//// https://platform.openai.com/docs/api-reference/files/list
/// prepare request1
let request1Uri = "https://api.openai.com/v1/files";
let request1 = httpClient.begin(); // HttpRequestWrapper
request1 = request1.authSetting( strAuthzSetting ); // with "Authorization: Bearer XX"
if ( strOrgId !== "" ){
request1 = request1.header( "OpenAI-Organization", strOrgId );
}
/// try request1
const response1 = request1.get( request1Uri ); // HttpResponseWrapper
engine.log( " AutomatedTask ApiRequest1 Start: " + request1Uri );
const response1Code = response1.getStatusCode() + ""; // JavaNum to string
const response1Body = response1.getResponseAsString();
engine.log( " AutomatedTask ApiResponse1 Status: " + response1Code );
if( response1Code !== "200"){
throw new Error( "\n AutomatedTask UnexpectedResponseError: " +
response1Code + "\n" + response1Body + "\n" );
}
/* engine.log( response1Body ); // debug
{
"object": "list",
"data": [
{
"object": "file",
"id": "file-rM8tP15b9pZ2tJSLZEfUl7fG",
"purpose": "fine-tune",
"filename": "training-data-questetra-bpm-suite-assistant.jsonl",
"bytes": 6823,
"created_at": 1690249576,
"status": "processed",
"status_details": null
},
{
"object": "file",
"id": "file-P6mdMBuR56sxgco3pr9qHAVm",
"purpose": "fine-tune",
"filename": "training-data-questetra-bpm-suite-assistant.jsonl",
"bytes": 6823,
"created_at": 1690252892,
"status": "processed",
"status_details": null
}
]
}*/
/// parse response1
const response1Obj = JSON.parse( response1Body );
engine.log( " AutomatedTask OpenAI #listed " );
let arrData = [];
for ( let i = 0; i < response1Obj.data.length; i++ ) {
arrData.push (
response1Obj.data[i].id + '\t' +
response1Obj.data[i].purpose + '\t' +
response1Obj.data[i].bytes + '\t' +
response1Obj.data[i].filename
);
}
////// == Data Updating / ワークフローデータへの代入 ==
if( strPocketTsv !== null ){
engine.setData( strPocketTsv, arrData.join('\n') );
}
} //////// END "main()" /////////////////////////////////////////////////////////////////
/*
Notes:
- If you place this "Automated Step" in the Workflow diagram, the request will be automatically sent every time the process token arrives.
- A request is automatically sent to the OpenAI API server. (REST API)
- The response from the OpenAI API server is automatically parsed.
- This "Automated Step" will list all files on the OpenAI server.
- All files belonging to the organization are listed.
APPENDIX
- To activate a Workflow App that includes this Automated Step, "HTTP Authz Setting" is required
- Obtain a "Secret API Key" in advance.
- Set the key as the communication token in "Token Fixed Value"
Notes-ja:
- この[自動工程]をワークフロー図に配置すれば、案件が到達する度にリクエストが自動送信されます。
- OpenAI API サーバに対してリクエストが自動送出されます。(REST API通信)
- OpenAI API サーバからのレスポンスが自動保存解析されます。
- この[自動工程]は、OpenAI サーバ上のファイルをリストアップします。
- 組織に帰属する全てのファイルが一覧されます。
APPENDIX-ja
- この[アドオン自動工程]を含むワークフローアプリを運用するには[HTTP 認証設定]が必要です。
- あらかじめ "Secret API Key" を取得しておいてください。
- "Secret API Key" を通信トークンとしてセットします。[トークン直接指定]
*/
Download
- openai-files-list-2023.xml
- 2023-07-20 (C) Questetra, Inc. (MIT License)
(Installing Addon Auto-Steps are available only on the Professional edition.)
Notes
- If you place this Automated Step in the Workflow diagram, the request will be automatically sent every time the process token arrives.
- A request is automatically sent to the OpenAI API server. (REST API)
- The response from the OpenAI API server is automatically parsed.
- This Automated Step will list all files on the OpenAI server.
- All files belonging to the organization are listed.
Capture

Appendix
- To activate a Workflow App that includes this Automated Step, “HTTP Authz Setting” is required
- Obtain a “Secret API Key” in advance.
- Set the key as the communication token in “Token Fixed Value”