# How is the Application Schema Implemented?

This article explains how the Snowflake CapStorm Salesforce Connector backing database storage is designed.

## Application Schema

The Snowflake CapStorm Salesforce Connector uses a Snowflake database that is built out during application installation to store internal configuration information, application metadata, and a default schema to store Salesforce data. These three schemas can be found below:

* \*\*DIRECTOR:\*\*Stores application metadata including job and task information.
* \*\*SALESFORCE:\*\*The default schema to store Salesforce data.
* \*\*CONFIG:\*\*Contains stored procedures executed by the application.
* \*\*INFORMATION\_SCHEMA:\*\*Built-in Snowflake metadata schema that provides read-only access to system metadata about objects in the database.
* \*\*INTERNAL:\*\*Contains stored procedures utilized for secret storage and billing.

### *DIRECTOR* Schema

The *DIRECTOR* schema within the Snowflake CapStorm Salesforce Connector application is utilized to store application specific information such as CopyStorm configuration files, job scheduling, and job history. This schema will NOT contain any records from a configured Salesforce organization; only data required for the application is stored here. For deeper information regarding the tables within this schema, see the [CopyStorm/Director Database Documentation](https://learn.capstorm.com/copystorm-director/readme/reference/copystorm-director-database).

### *SALESFORCE* Schema

The *SALESFORCE* schema is the default schema within the application database to store Salesforce record data. If a database name and schema name are not provided when configuring replication for a specific Salesforce organization, the Salesforce records will be stored here. When backing up Salesforce data, a different table will be created to match the definition of each object being replicated from Salesforce. This schema also contains CopyStorm application specific metadata tables utilized to store information about what objects have been replicated, historic job run logs, and configuration information.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.capstorm.com/snowflake-salesforce-connector/frequently-asked-questions/how-is-the-application-schema-implemented.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
