|
| 1 | +# Open Data Network |
| 2 | + |
| 3 | +The Open Data Network connector enables users to access and utilize government data to improve decision-making and enrich lives. By leveraging data from various government sources, this connector allows developers, businesses, and public sector organizations to integrate valuable information into their applications and services, driving open data standards and best practices. The system has over 700+ Federal, State, and Local agencies contributing data and hosts tens of thousands of datasets. Examples of contributing agencies include the Centers for Disease Control and Prevention (CDC), Environmental Protection Agency (EPA), Federal Bureau of Investigation (FBI), and National Aeronautics and Space Administration (NASA). |
| 4 | + |
| 5 | +## Publisher: Richard Wilson |
| 6 | + |
| 7 | +## Prerequisites |
| 8 | + |
| 9 | +To use this connector, you must have an API key or App Token. You can obtain an API key by creating an account on the Open Data Network website and requesting access to the API. Please see the "Obtaining Credentials" section for detailed instructions on generating App Tokens and API Keys. |
| 10 | + |
| 11 | +## Supported Operations |
| 12 | + |
| 13 | +### Search Catalog |
| 14 | + |
| 15 | +Search for open data network assets using various query parameters. |
| 16 | + |
| 17 | +- **Inputs**: |
| 18 | + |
| 19 | + | Name | Description | |
| 20 | + |--------------------|-------------------------------------------------------------------------------------------------------| |
| 21 | + | `Id` | The unique identifier of an asset | |
| 22 | + | `Domain` | The domain name | |
| 23 | + | `Name` | The case-insensitive asset name | |
| 24 | + | `Category` | A single category | |
| 25 | + | `Tag` | A single tag | |
| 26 | + | `Only` | One of the asset types (e.g., dataset, chart, map) | |
| 27 | + | `Attribution` | The case-sensitive name of the attributing entity | |
| 28 | + | `License` | The case-sensitive license name | |
| 29 | + | `Full-Text Search Query` | Search for assets by any text in their name, description, category, tags, or other fields | |
| 30 | + | `Min Should Match` | The number or percent of words that must match | |
| 31 | + | `Parent Id` | The unique identifier of a parent asset | |
| 32 | + | `Derived From` | The unique identifier of an asset derived from another | |
| 33 | + | `Provenance` | The provenance, either 'official' or 'community' | |
| 34 | + | `For User` | The unique identifier of a user or a team | |
| 35 | + | `Shared To` | The unique identifier of a user or team to whom assets are shared | |
| 36 | + | `Column Name` | The name of a column | |
| 37 | + | `Public` | A true or false value for public or private assets | |
| 38 | + | `Visibility` | The visibility status, either 'open' or 'internal' | |
| 39 | + | `Audience` | The audience, either 'private', 'site' or 'public' | |
| 40 | + | `Published` | A true or false value for published or unpublished assets | |
| 41 | + | `Approval Status` | The approval status (pending, rejected, approved, not_ready) | |
| 42 | + | `Explicitly Hidden`| A true or false value for hidden or unhidden assets | |
| 43 | + | `Data Json Hidden` | A true or false value for assets hidden or unhidden from data.json catalog | |
| 44 | + | `Derived` | A true or false value for derived or base assets | |
| 45 | + | `Order` | The sort order of the results | |
| 46 | + | `Offset` | Initial starting point for paging (0 by default) | |
| 47 | + | `Limit` | Number of results to return (100 by default, up to 10000) | |
| 48 | + | `Scroll Id` | The identifier for the last asset from the previous results | |
| 49 | + | `Boost Official` | Multiplier for the relevance score of official documents | |
| 50 | + | `Show Visibility` | Whether to return visibility information | |
| 51 | + |
| 52 | +- **Outputs**: |
| 53 | + |
| 54 | + Returns a list of open data network assets matching the search criteria, including asset details such as name, description, and metadata. |
| 55 | + |
| 56 | +### Search Dataset with SoQL |
| 57 | + |
| 58 | +Retrieve data from a dataset using SoQL query. |
| 59 | + |
| 60 | +- **Inputs**: |
| 61 | + |
| 62 | + | Name | Description | |
| 63 | + |---------------------|------------------------------------------------------------------| |
| 64 | + | `Domain` | Dataset publishers | |
| 65 | + | `Dataset` | The unique identifier of the dataset resource | |
| 66 | + | `Limit` | The number of records to return | |
| 67 | + | `Offset` | The offset for pagination | |
| 68 | + | `Select` | The set of columns to be returned, similar to a SELECT in SQL | |
| 69 | + | `Where` | Filters the rows to be returned, similar to WHERE | |
| 70 | + | `Order` | Column to order results on, similar to ORDER BY in SQL | |
| 71 | + | `Group` | Column to group results on, similar to GROUP BY in SQL | |
| 72 | + | `Having` | Filters the rows that result from an aggregation, similar to HAVING | |
| 73 | + | `Full Text Search` | Performs a full text search for a value | |
| 74 | + | `Full SoQL Query` | A full SoQL query string, all as one parameter | |
| 75 | + |
| 76 | +- **Outputs**: |
| 77 | + |
| 78 | + Returns the data from the specified dataset resource, based on the SoQL query parameters. |
| 79 | + |
| 80 | +### Get Search Data |
| 81 | + |
| 82 | +Get data for search fields. |
| 83 | + |
| 84 | +- **Inputs**: |
| 85 | + |
| 86 | + | Name | Description | |
| 87 | + |-----------|----------------------------------------------------| |
| 88 | + | `Domain` | The domain of the dataset | |
| 89 | + | `Dataset` | The unique identifier of the dataset resource | |
| 90 | + | `Query` | The search query to get values | |
| 91 | + | `Limit` | The limit of values to return | |
| 92 | + |
| 93 | +- **Outputs**: |
| 94 | + |
| 95 | + Returns search data values for the specified query parameters. |
| 96 | + |
| 97 | +## Obtaining Credentials |
| 98 | + |
| 99 | +### Generating App Tokens and API Keys |
| 100 | + |
| 101 | +#### What is an App Token? |
| 102 | + |
| 103 | +An Application Token is an alphanumeric string that authorizes you to create an application. App tokens can be used as part of the authentication process to perform read operations through the API. Data & Insights users can leverage the app tokens to reach out to users in case their application is causing too many calls per unit time, and they need to be throttled. |
| 104 | + |
| 105 | +#### What is an API Key? |
| 106 | + |
| 107 | +API Keys can be used to perform read, write, and delete operations through the API. These operations will be available to each user according to their role on the domain they are accessing. An API Key comes with a secret key, which together serve as a proxy for a user's username and password. The advantage of using an API Key + Secret Key is that it allows a user to authenticate without showing their username, and it will not change as the user's Data & Insights password changes. |
| 108 | + |
| 109 | +#### Obtaining an App Token and API Keys |
| 110 | + |
| 111 | +1. Start by logging into your Data & Insights account on any Data & Insights domain, such as [evergreen.data.socrata.com](https://evergreen.data.socrata.com). |
| 112 | +2. Navigate to your profile page by selecting the rightmost icon on the header bar. |
| 113 | +3. Click on "Your Profile" and select the pencil icon to edit your profile. |
| 114 | +4. In the profile settings, navigate to "Developer Settings" for API keys and app tokens. |
| 115 | +5. Click "Create New App Token" and fill in the sections for Name and Description. For example, if you will be using this token to authorize automated DataSync updates, you could call the app token “Your Name - DataSync token” and as a description enter “App token used for updating datasets on ‘x’ domain”. |
| 116 | + |
| 117 | +Please note: Your Application Name must be unique across all registered applications on all Data & Insights domains. |
| 118 | + |
| 119 | +## Known Issues and Limitations |
| 120 | + |
| 121 | +Currently, no known issues or limitations exist. Always refer to this section for updated information. |
0 commit comments