> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plainid.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Import Application

> This API call is designed to support CREATE and UPDATE operations to the indicated Environment. An **import** operation occurs when a *new* `applicationId` is used. An **update** operation occurs if the `applicationId` *already exists*.
<br> <br>
<h2>Notice</h2>Accessing the API call is through a dedicated domain/URL, according to your PlainID Tenant Location<li><b>United States (US)</b> - `https://api.us1.plainid.io`</li><li><b>Canada (CA)</b> - `https://api.ca1.plainid.io`</li><li><b>Europe (EU)</b> - `https://api.eu1.plainid.io`</li> <br> <h2>Using HTML Encoded Special Characters</h2> <p>Use HTML encoded patterns when working with values that contain special characters like spaces, dashes, etc. Refer to this <a href="https://www.w3schools.com/tags/ref_urlencode.ASP" target="_blank">HTML URL Encoding Reference</a> for a full list.</p> <br>

<h2>Important note about headers</h2> <p>Refer to the headers below to modify your cURL sample. Check if the following headers are in the sample, if not, ensure you add it to your cURL sample before pasting into your API tool. </p> <h3>Headers</h3> *Required <table><thead> <tr> <th>Header</th> <th>Value</th> <th>cURL Line</th> </tr></thead> <tbody> <tr> <td>Accept</td> <td>`application/json`</td> <td> `-H "Accept:application/json"`</td> </tr> <tr> <td>Content-Type</td> <td>`application/json`</td> <td> `-H "Content-Type:application/json"`</td> </tr> </tbody> </table> <br> <h3>cURL Sample Guidelines</h3> <p>In order for the relevant parameters to appear in the cURL sample, you can input the values in the interactive API console on the right in the Try It or Code Sample tabs. You can then copy the cURL sample from the Code Sample tab in the correct format.</p>

## OpenAPI

````json POST /api/1.0/applications/{envId}
{
  "openapi": "3.0.3",
  "info": {
    "title": "Management APIs",
    "version": "1.0.0",
    "contact": {
      "name": "PlainID",
      "url": "https://plainid.com",
      "email": "contact@plainid.com"
    },
    "license": {
      "name": "Commercial",
      "url": "https://plainid.com/license"
    },
    "termsOfService": "https://www.plainid.com/terms/",
    "description": "<h3>The PlainID Authorization Platform provides Management capabilities through the APIs below.</h3><h4> To access the Management APIs, make sure to enter your dedicated domain according to your PlainID Tenant Location:<table><thead><tr><th>Region</th><th>Base URL</th></tr></thead><tbody><tr><td>United States (US)</td><td>https://api.us1.plainid.io</td></tr><tr><td>Canada (CA)</td><td>https://api.ca1.plainid.io</td></tr><tr><td>Europe (EU)</td><td>https://api.eu1.plainid.io</td></tr><tr><td>Local PAA</td><td>https://api.plainid.local</td></tr></tbody></table>"
  },
  "servers": [
    {
      "description": "United States",
      "url": "https://api.us1.plainid.io"
    },
    {
      "description": "Europe",
      "url": "https://api.eu1.plainid.io"
    },
    {
      "description": "Canada",
      "url": "https://api.ca1.plainid.io"
    },
    {
      "description": "Local PAA",
      "url": "https://api.plainid.local"
    }
  ],
  "paths": {
    "/api/1.0/applications/{envId}": {
      "post": {
        "summary": "Import Application",
        "operationId": "importApplication",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "description": "This API call is designed to support CREATE and UPDATE operations to the indicated Environment. An **import** operation occurs when a *new* `applicationId` is used. An **update** operation occurs if the `applicationId` *already exists*.\n<br> <br>\n<h2>Notice</h2>Accessing the API call is through a dedicated domain/URL, according to your PlainID Tenant Location<li><b>United States (US)</b> - `https://api.us1.plainid.io`</li><li><b>Canada (CA)</b> - `https://api.ca1.plainid.io`</li><li><b>Europe (EU)</b> - `https://api.eu1.plainid.io`</li> <br> <h2>Using HTML Encoded Special Characters</h2> <p>Use HTML encoded patterns when working with values that contain special characters like spaces, dashes, etc. Refer to this <a href=\"https://www.w3schools.com/tags/ref_urlencode.ASP\" target=\"_blank\">HTML URL Encoding Reference</a> for a full list.</p> <br>\n\n<h2>Important note about headers</h2> <p>Refer to the headers below to modify your cURL sample. Check if the following headers are in the sample, if not, ensure you add it to your cURL sample before pasting into your API tool. </p> <h3>Headers</h3> *Required <table><thead> <tr> <th>Header</th> <th>Value</th> <th>cURL Line</th> </tr></thead> <tbody> <tr> <td>Accept</td> <td>`application/json`</td> <td> `-H \"Accept:application/json\"`</td> </tr> <tr> <td>Content-Type</td> <td>`application/json`</td> <td> `-H \"Content-Type:application/json\"`</td> </tr> </tbody> </table> <br> <h3>cURL Sample Guidelines</h3> <p>In order for the relevant parameters to appear in the cURL sample, you can input the values in the interactive API console on the right in the Try It or Code Sample tabs. You can then copy the cURL sample from the Code Sample tab in the correct format.</p>",
        "tags": [
          "Application"
        ],
        "parameters": [
          {
            "name": "authWsId",
            "in": "query",
            "required": "true",
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "description": "Authorization Workspace ID. This can be found in your Authorization Workspace Settings under Workspace ID."
          },
          {
            "name": "envId",
            "in": "path",
            "required": "true",
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "description": "The Environment ID can be found under the Details Tab in the Environment Settings."
          }
        ],
        "requestBody": {
          "description": "Fields to update in the Application",
          "required": "true",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Application"
              },
              "examples": {
                "example": {
                  "value": {
                    "applicationId": "accountsApp",
                    "displayName": "Bank Accounts Application",
                    "description": "This is the Bank's Application for Accounts",
                    "logoUrl": "https://logourl.com",
                    "colorIndication": "#85574A",
                    "assetTemplateIds": [
                      "accounts",
                      "loans"
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful operation",
            "headers": {
              "x-request-id": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                },
                "description": "The ID of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApplicationResponse"
                },
                "examples": {
                  "example": {
                    "value": {
                      "data": {
                        "applicationId": "accountsApp",
                        "displayName": "Bank Accounts Application",
                        "description": "This is the Bank's Application for Accounts",
                        "logoUrl": "https://logourl.com",
                        "colorIndication": "#85574A",
                        "assetTemplateIds": [
                          "accounts",
                          "loans"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation Error",
            "headers": {
              "x-request-id": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                },
                "description": "The ID of the request"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                },
                "examples": {
                  "validationError": {
                    "$ref": "#/components/examples/applicationIdUniquenessError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "headers": {
              "x-request-id": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                },
                "description": "The ID of the request"
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "x-request-id": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                },
                "description": "The ID of the request"
              }
            }
          },
          "404": {
            "description": "Object not found",
            "headers": {
              "x-request-id": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                },
                "description": "The ID of the request"
              }
            }
          },
          "422": {
            "description": "Payload Validation Error",
            "headers": {
              "x-request-id": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                },
                "description": "The ID of the request"
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "headers": {
              "x-request-id": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                },
                "description": "The ID of the request"
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Application": {
        "type": "object",
        "description": "Application",
        "required": [
          "applicationId",
          "displayName"
        ],
        "properties": {
          "applicationId": {
            "type": "string",
            "description": "Unique identifier for the Application.",
            "maxLength": "128",
            "minLength": "1",
            "pattern": "^[a-zA-Z0-9_:.-]+$"
          },
          "displayName": {
            "type": "string",
            "description": "Application Name",
            "maxLength": "100",
            "minLength": "1"
          },
          "description": {
            "description": "Application Description",
            "type": "string",
            "maxLength": "200"
          },
          "logoUrl": {
            "description": "Application Logo URL",
            "type": "string",
            "format": "uri"
          },
          "colorIndication": {
            "description": "Application Color",
            "type": "string"
          },
          "assetTemplateIds": {
            "description": "List of Asset Templates IDs that are associated with this Application.",
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "ApplicationResponse": {
        "type": "object",
        "description": "Application",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/Application"
          }
        }
      },
      "ErrorResponse": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "details": {
            "type": "string"
          }
        }
      }
    },
    "examples": {
      "applicationIdUniquenessError": {
        "value": {
          "errors": [
            {
              "code": "APV-004",
              "args": {
                "0": "appId",
                "path": "$.id"
              },
              "id": "EBS8Z6",
              "status": "400",
              "name": "applicationIdUniquenessError",
              "message": "Application ID: [appId] must be unique"
            }
          ]
        }
      }
    }
  }
}
````

