openapi: 3.2.0
info:
description: "All Optilogic users can view the endpoint documentation below, upgrade to a paid account to gain access.
Once you have api access, use the `refreshApiKey` endpoint with your account login information or use the `Quick Start` form below to get started.\n### Installing Additional Python Packages \nWhen a job is run - such as when using the **Job POST** endpoint - the system will check the directoryPath specified in the POST call for a file named `requirements.txt`. If the file exists, then the system will attempt to install all packages specified by running `pip install -r requirements.txt` before running the file specified in the filePath parameter.\n### Accessing your Files \nYour files are stored in the */projects* directory of the workspace. Files saved in this directory are available to your *Atlas* workspace and to REST API endpoints.\nAll directory paths passed as a *directoryPath*, *sourceDirectoryPath*, or *targetDirectoryPath* parameter are relative to the */projects* directory.\nThis means you must **not** include */projects* as part of the path string.\n\nExample:\n - directoryPath = \"pyomo-examples/models/diet-problem\"\n - filePath = \"diet-problem.py\"\n\nExample:\n - directoryPath = \".\"\n - filePath = \"my-model.py\"\n\n
\n\n## Example Application \n\nOptiJS Demo\n\nThis demo application uses the OptiJS client library to run and monitor jobs from Python modules on a users' account. Custom applications can be quickly created on top of the Optilogic API using the OptiJS and OptiPy client libraries.\n\n\n
\n"
version: 1.0.0
title: 'Optilogic REST storage : custom tables API'
contact:
name: Optilogic Support
email: support@optilogic.com
servers:
- url: https://api.optilogic.app/v0
tags:
- name: 'storage : custom tables'
description: Manage database custom tables
paths:
/storage/{storageName}/custom-tables:
get:
tags:
- 'storage : custom tables'
summary: Get custom tables
description: Retrieve a list of all customtables in a database.
parameters:
- name: storageName
in: path
description: Name of the target storage device
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetCustomTables'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Resource Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- APIKeyHeader: []
/storage/{storageName}/custom-table:
post:
tags:
- 'storage : custom tables'
summary: Create a custom table.
description: Creates a custom table with an id column as its primary key. Table will be created with lowercased letters.
parameters:
- name: storageName
in: path
description: Name of the target storage device
required: true
schema:
type: string
- name: tableName
in: query
description: Name of the table to create
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCustomTable'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Resource Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- APIKeyHeader: []
put:
tags:
- 'storage : custom tables'
summary: Rename a custom table.
description: Renames a custom table. Table will be renamed with lowercased letters.
parameters:
- name: storageName
in: path
description: Name of the target storage device
required: true
schema:
type: string
- name: tableName
in: query
description: Name of the table to rename
required: true
schema:
type: string
- name: newTableName
in: query
description: New name of the table
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCustomTable'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Resource Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- APIKeyHeader: []
delete:
tags:
- 'storage : custom tables'
summary: Delete a custom table.
description: Deletes a custom table.
parameters:
- name: storageName
in: path
description: Name of the target storage device
required: true
schema:
type: string
- name: tableName
in: query
description: Name of the table to delete
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteCustomTable'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Resource Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- APIKeyHeader: []
components:
schemas:
CreateCustomTable:
type: object
properties:
tableName: null
result:
type: string
format: string
example: success
Error:
type: object
properties:
result:
type: string
format: string
error:
type: string
format: string
correlationId:
type: string
format: uuid
DeleteCustomTable:
type: object
properties:
result:
type: string
format: string
example: success
message:
type: string
GetCustomTables:
type: object
properties:
result:
type: string
format: string
example: success
customTables:
type: array
items:
type: string
UpdateCustomTable:
type: object
properties:
result:
type: string
format: string
example: success
securitySchemes:
APIKeyHeader:
type: apiKey
in: header
name: X-API-KEY
externalDocs:
description: Find out more about Optilogic
url: https://optilogic.com