openapi: 3.1.0 info: title: Dataiku API Node Administration Artifact Sign-Offs Projects API description: REST API for administering Dataiku API Nodes, managing deployed services, service generations, prediction endpoints, and authentication keys for real-time API serving of machine learning models and data lookups. version: '13.0' contact: name: Dataiku Support url: https://www.dataiku.com/support email: support@dataiku.com termsOfService: https://www.dataiku.com/terms/ servers: - url: https://{apinode-host}:{port}/admin/api description: Dataiku API Node Instance variables: apinode-host: default: apinode.example.com description: Hostname of the Dataiku API Node port: default: '12443' description: Admin API port security: - apiKeyAuth: [] tags: - name: Projects description: Manage DSS projects paths: /projects: get: operationId: listProjects summary: Dataiku List projects description: Retrieve a list of all projects the API key has access to. tags: - Projects responses: '200': description: List of projects content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectSummary' '401': description: Unauthorized post: operationId: createProject summary: Dataiku Create a project description: Create a new DSS project. tags: - Projects requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateProjectRequest' responses: '200': description: Project created successfully content: application/json: schema: $ref: '#/components/schemas/ProjectSummary' '400': description: Invalid request '401': description: Unauthorized '409': description: Project key already exists /projects/{projectKey}: get: operationId: getProject summary: Dataiku Get project details description: Retrieve metadata and settings for a specific project. tags: - Projects parameters: - $ref: '#/components/parameters/projectKey' responses: '200': description: Project details content: application/json: schema: $ref: '#/components/schemas/Project' '401': description: Unauthorized '404': description: Project not found delete: operationId: deleteProject summary: Dataiku Delete a project description: Delete a project and all its contents. tags: - Projects parameters: - $ref: '#/components/parameters/projectKey' responses: '204': description: Project deleted '401': description: Unauthorized '404': description: Project not found /projects/{projectKey}/metadata: get: operationId: getProjectMetadata summary: Dataiku Get project metadata description: Retrieve metadata (labels, description, tags, etc.) for a project. tags: - Projects parameters: - $ref: '#/components/parameters/projectKey' responses: '200': description: Project metadata content: application/json: schema: $ref: '#/components/schemas/ProjectMetadata' '404': description: Project not found put: operationId: setProjectMetadata summary: Dataiku Set project metadata description: Update metadata for a project. tags: - Projects parameters: - $ref: '#/components/parameters/projectKey' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProjectMetadata' responses: '200': description: Metadata updated '404': description: Project not found components: schemas: ProjectMetadata: type: object properties: label: type: string description: Display label for the project description: type: string description: Project description shortDesc: type: string description: Short description tags: type: array items: type: string description: Tags associated with the project checklists: type: object description: Checklists for the project Tag: type: object properties: versionNumber: type: integer description: Version number lastModifiedBy: type: object properties: login: type: string lastModifiedOn: type: string format: date-time description: Timestamp of last modification Project: type: object properties: projectKey: type: string description: Unique project key name: type: string description: Display name of the project owner: type: string description: Login of the project owner projectStatus: type: string description: Current status of the project creationTag: $ref: '#/components/schemas/Tag' versionTag: $ref: '#/components/schemas/Tag' description: type: string description: Short description of the project CreateProjectRequest: type: object required: - projectKey - name properties: projectKey: type: string description: Unique project key (uppercase letters and numbers) pattern: ^[A-Z][A-Z0-9_]*$ name: type: string description: Display name for the project owner: type: string description: Login of the project owner ProjectSummary: type: object properties: projectKey: type: string description: Unique project key name: type: string description: Display name of the project owner: type: string description: Login of the project owner projectStatus: type: string description: Current status of the project parameters: projectKey: name: projectKey in: path required: true description: Unique project key identifier schema: type: string securitySchemes: apiKeyAuth: type: apiKey in: header name: Authorization description: Admin API key passed as Bearer token externalDocs: description: Dataiku API Node Administration Documentation url: https://doc.dataiku.com/dss/latest/apinode/api/admin-api.html