CData Sync App は、Basecamp データをデータベース、データレイク、またはデータウェアハウスに継続的にパイプライン化する簡単な方法を提供し、分析、レポート、AI、および機械学習で簡単に利用できるようにします。
Basecamp コネクタはCData Sync アプリケーションから使用可能で、Basecamp からデータを取得して、サポートされている任意の同期先に移動できます。
Sync App アプリケーションの接続 ページに移動し、接続の追加 パネルで対応するアイコンを選択して、Basecamp への接続を作成します。Basecamp アイコンが利用できない場合は、Add More アイコンをクリックしてCData サイトからBasecamp コネクタをダウンロードおよびインストールします。
必須プロパティは[設定]タブにリストされています。[Advanced]タブには、通常は必要ない接続プロパティが表示されます。
認証に加えて、次の接続プロパティを設定してBasecamp テーブルにアクセスします。
ProjectId 接続プロパティを指定しない場合は、Sync App はBasecamp への最初の認証でProjects テーブルから返された最初のプロジェクトId を使用します。
http://basecamp.com/<AccountId>
Basecamp 2 はBasic 認証もしくはOAuth 2.0 認証を使います。Basic 認証を使用して自分のアカウントに接続することも、OAuth を使用して他のユーザーが彼ら自身のアカウントにログインできるようにすることもできます。
Basecamp 3 はOAuth 2.0 が必要です。
Basic 認証では、自分のログインクレデンシャルを使用して接続します。次のプロパティを設定します。
AuthScheme は、すべてのユーザーアカウントフローでOAuth に設定する必要があります。
初めに、次の接続プロパティを設定してOAuthAccessToken を取得します。
続いてストアドプロシージャを呼び出し、OAuth 交換を完了します。
アクセストークンとリフレッシュトークンを取得した後、データに接続し、OAuth アクセストークンを自動または手動でリフレッシュすることが可能です。
OAuth アクセストークンの自動リフレッシュ
ドライバーがOAuth アクセストークンを自動的にリフレッシュするようにするには、最初のデータ接続で次のように設定します。
OAuth アクセストークンの手動リフレッシュ
データ接続時に手動でOAuth アクセストークンをリフレッシュするために必要な値は、OAuth リフレッシュトークンのみです。
GetOAuthAccessToken によって返されたExpiresIn パラメータ値が経過した後に、RefreshOAuthAccessToken ストアドプロシージャを使用し、手動でOAuthAccessToken をリフレッシュします。次の接続プロパティを設定します。
次に、RefreshOAuthAccessToken を呼び出し、OAuthRefreshToken にGetOAuthAccessToken によって返されたOAuth リフレッシュトークンを指定します。新しいトークンが取得できたら、OAuthAccessToken プロパティにRefreshOAuthAccessToken によって返された値を設定し、新しい接続をオープンします。
最後に、OAuth リフレッシュトークンを保存し、OAuth アクセストークンの有効期限が切れた後に手動でリフレッシュできるようにします。
このセクションでは、Basecamp Sync App の高度な機能を厳選して説明します。
Sync App を使用すると、事前設定されたクエリによって内容が決定されるユーザー定義ビューと呼ばれる仮想テーブルを定義できます。 このビューは、ドライバーに発行されるクエリを直接制御できない場合に有効です。 カスタムビューの作成と設定の概要については、ユーザー定義ビュー を参照してください。
SSL の設定 を使用して、Sync App が証明書のネゴシエーションをどのように扱うかを調整します。さまざまな証明書形式を選択できます。 詳しくは、接続文字列オプションにあるSSLServerCert プロパティを参照してください。
Windows プロキシとHTTP プロキシを含むファイアウォールとプロキシ に合致するようSync App を設定します。トンネル接続を設定することもできます。
Sync App は、Basecamp にできるだけ多くのSELECT ステートメント処理をオフロードし、残りのクエリをクライアント側のインメモリで処理します。
詳しくはクエリ処理 を参照してください。
CData ログを調整するために使用可能な設定の概要については、ログ を参照してください。基本的なロギングでは、 次の2つの接続プロパティを設定するだけです。LogModules 接続プロパティを使用してログに記録する情報のサブセットを選択できる、 より洗練されたロギングをサポートする多数の機能があります。
デフォルトでは、Sync App はサーバーの証明書をシステムの信頼できる証明書ストアと照合してSSL / TLS のネゴシエーションを試みます。
別の証明書を指定するには、利用可能なフォーマットについてSSLServerCert プロパティを参照してください。
Windows のシステムプロキシ経由の接続では、接続プロパティを追加で設定する必要はありません。他のプロキシに接続するには、ProxyAutoDetect をfalse に設定します。
さらにHTTP プロキシへの認証には、ProxyServer とProxyPort に加えてProxyAuthScheme、ProxyUser、およびProxyPassword を設定します。
次のプロパティを設定します。
CData Sync App は、Basecamp 2 およびBasecamp API をリレーショナルテーブル、ビュー、およびストアドプロシージャとしてモデル化します。これらは、簡単なテキストベースのコンフィギュレーションファイルであるスキーマファイルにて定義されます。
利用可能なエンティティ、およびこれらのエンティティをクエリするためのAPI の制限および要件については、Basecamp 2 データモデル およびBasecamp 3 データモデル で説明します。 既定のSupportEnhancedSQL 機能を使って、これらの制限の大半を回避できます。
データモデルは、Basecamp 環境がどのように見えるかの例を示します。実際のデータモデルは、Basecamp アカウントに基づいて動的に取得されます。
Basecamp 2 データモデル describes the schemas available to connect to Basecamp 2 accounts.You can use tables to work with live Basecamp data.You can use stored procedures provided by CData Sync App to automate working with Basecamp data.
Basecamp 3 データモデル describes the schemas available to connect to Basecamp 3 accounts.You can use tables to work with live Basecamp data.You can use stored procedures provided by CData Sync App to automate working with Basecamp data.
このセクションでは、Basecamp 2アカウントへの接続に使用できるテーブル、ビュー、およびストアドプロシージャ について説明します。
Sync App はBasecamp のデータを、標準のSQL ステートメントを使用してクエリできるテーブルのリストにモデル化します。
一般的には、Basecamp テーブルのクエリは、リレーショナルデータベースのテーブルのクエリと同じです。時には特別なケースもあります。例えば、テーブルの特定のカラムデータを取得するために特定のカラムをWHERE 句に含める必要がある場合などです。これは通常、特定のカラムを取得するために行ごとに個別のリクエストを行う必要がある場合に必要です。これらの特別な状況は、以下にリンクされているテーブルページの上部に明確に文書化されています。
Name | Description |
Accesses | Retrieve, grant, and deny access permissions to Projects and Calendars on Basecamp. |
CalendarEvents | Retrieve, create, update, and delete Calendar Events on Basecamp. |
Calendars | Retrieve, create, update, and delete Calendars on Basecamp. |
Documents | Retrieve, create, update, and delete Documents on Basecamp. |
People | Retrieve and delete People on Basecamp. |
Projects | Retrieve, create, update, and delete Projects on Basecamp. |
Retrieve, grant, and deny access permissions to Projects and Calendars on Basecamp.
Accesses を取得するには、ProjectId もしくはCalendarId を指定する必要があります。これらのカラムはBasecamp がフィルタ条件として'=' 演算子と共に使うことがサポートされています。
SELECT * FROM Accesses WHERE ProjectId = '11111111' SELECT * FROM Accesses WHERE CalendarId = '11111111'
Email Address もしくはId(すでに組織のメンバーである場合)を使って、メンバーにProject もしくはCalendar へのアクセスを与えることができます。
INSERT INTO Accesses (ProjectId, EmailAddresses) VALUES ('11111111', '[email protected], [email protected]') INSERT INTO Accesses (CalendarId, Ids) VALUES ('11111111', '123456789, 987654321')
Update 処理はAccesses テーブルではサポートされていません。
Project もしくはCalendar から特定の人のアクセス権を削除するには、ProjectId もしくはCalendarId とその人のId を指定します。
DELETE FROM Accesses WHERE ProjectId = '11111111' AND Id = '123456789' DELETE FROM Accesses WHERE CalendarId = '11111111' AND Id = '123456789'
Name | Type | ReadOnly | References | Description |
Id [KEY] | String | True |
The unique identifier of the person with access to the project or calendar. | |
Admin | Boolean | True |
Boolean value to show if the current person is an admin or not. | |
AppUrl | String | True |
The app URL. | |
AvatarUrl | String | True |
The avatar URL of the person. | |
CanCreateProjects | Boolean | True |
Whether the person can create projects or not. | |
CreatedAt | Datetime | True |
The date and time when the record was created. | |
EmailAddress | String | True |
The email address of the person with access to the project or calendar. | |
FullsizeAvatarUrl | String | True |
The full-size avatar URL of the person. | |
IdentityId | String | True |
The identity Id of the person with access to the project or calendar. | |
IsClient | Boolean | False |
Is the returned user a client or not. | |
Name | String | True |
The name of the person with access to the project or calendar. | |
Trashed | Boolean | False |
Boolean value for deleted people. | |
UpdatedAt | Datetime | True |
The date and time when the record was last updated. | |
URL | String | True |
The URL of the person. | |
Ids | String | False |
A comma separated list of user Ids to be granted access to a project or calendar. | |
EmailAddresses | String | False |
A comma separated list of user email addresses to be granted access to a project or calendar. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description |
ProjectId | String |
The Project Id associated with the access. |
CalendarId | String |
The Calendar Id associated with the access. |
Retrieve, create, update, and delete Calendar Events on Basecamp.
Basecamp は、WHERE 句でフィルタ条件として使用される限られたカラムのサブセットのみをサポートします。このテーブルのすべてのBoolean カラムは'=' 演算子と一緒に使うことができます。ProjectId、CalendarId、およびEndsAt も'=' 演算子と一緒に使うことができます。さらに、StartsAt カラムは、'>=' 演算子と一緒に使うことができます。
次のクエリは特定の時間範囲でフィルタをかけます:
SELECT * FROM CalendarEvents WHERE StartsAt = '2016-01-01' AND EndsAt = '2016-02-01'次のクエリは、特定のProject もしくはCalendar のCalendarEvents を取得します。
SELECT * FROM CalendarEvents WHERE ProjectId= '123456768' SELECT * FROM CalendarEvents WHERE CalendarId = '123456768'
新しいCalendarEvent を作成するには、ProjectId かCalendarId およびStartsAt を指定します。
INSERT INTO CalendarEvents (ProjectId, Summary, Description, AllDay, StartsAt) VALUES ('12345678', 'My single, all-day Project event', 'Details to follow', 'true', 2016-02-01)
CalendarEvents の更新や削除には、ProjectId かCalendarId およびCalendarEvent Id を指定します。
UPDATE CalendarEvents SET Summary = 'Updated, two-day Project event', Description = 'Details to follow', AllDay = 'true', StartsAt = '2016-01-01', EndsAt = '2016-01-03' WHERE ProjectId = '12345678' AND Id = '12345678' DELETE FROM CalendarEvents WHERE ProjectId = '12345678' AND Id = '12345678'
Name | Type | ReadOnly | References | Description |
Id [KEY] | String | True |
The unique identifier for the calendar event. | |
AllDay | Boolean | False |
Whether the calendar event is an all-day event. | |
AppUrl | String | True |
The app URL. | |
BucketAppUrl | String | True |
The calendar event bucket app url. | |
BucketColor | String | True |
The calendar event bucket color. | |
BucketId | String | True |
The calendar event bucket Id. | |
BucketName | String | True |
The calendar event bucket name. | |
BucketType | String | True |
The calendar event bucket type. | |
BucketUrl | String | True |
The calendar event bucket URL. | |
CommentsCount | Integer | True |
The number of comments on this calendar event. | |
CreatedAt | Datetime | True |
The date and time when the calendar event was created. | |
CreatorAvatarUrl | String | False |
Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | False |
Creator full-size avatar URL. | |
CreatorId | String | False |
The Id of the creator of the calendar event. | |
CreatorName | String | False |
The name of the creator of the calendar event. | |
Description | String | False |
The description for the calendar event. | |
EndsAt | Datetime | False |
The end date and time for the calendar event. | |
Past | Boolean | False |
Boolean value for past calendar events. | |
Private | Boolean | False |
Whether this calendar event is private. | |
RemindAt | Datetime | False |
The date and time for the calendar event reminder. | |
StartsAt | Datetime | False |
The start date and time for the calendar event. | |
SubscribersId | String | False |
The Id of the subscriber to the calendar event. | |
SubscribersName | String | False |
The name of the subscriber to the calendar event. | |
Summary | String | False |
The summary for the calendar event. | |
Trashed | Boolean | False |
Boolean value for deleted calendar events. | |
UpdatedAt | Datetime | True |
The date and time when the calendar event was updated. | |
Url | String | True |
The URL of the calendar event. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description |
ProjectId | String |
The Id of the Project associated with the calendar event. |
CalendarId | String |
The calendar Id associated with the calendar event. |
Retrieve, create, update, and delete Calendars on Basecamp.
特定のCalendar からより多くの情報を取得するには、Calendars からSelect all するかId を指定します(Basecamp で検索条件としてサポートされるカラムはId のみです)。
SELECT * FROM Calendars WHERE Id = '123456789'
組織下に新しいCalendar を作成するには、(少なくとも)Name プロパティを指定します。
INSERT INTO Calendars (Name) VALUES ('New Test Calendar')
Calendar の更新および削除には、Calendar Id を指定します。更新の場合には、Name プロパティを指定する必要があります。
UPDATE Calendars SET Name = 'This is a new name for the Test Calendar.' WHERE Id = '123456789' DELETE FROM Calendars WHERE Id = '123456789'
Name | Type | ReadOnly | References | Description |
Id [KEY] | String | True |
The unique identifier for the calendar. | |
AccessesAppUrl | String | True |
The accesses app URL. | |
AccessesCount | Integer | True |
The accesses count. | |
AccessesUpdatedAt | Datetime | True |
The time when accesses were updated. | |
AccessesUrl | String | True |
The accesses URL. | |
AppUrl | String | True |
The app URL. | |
CalendarEventsCount | Integer | True |
Number of calendar events. | |
CalendarEventsUpdatedAt | Datetime | True |
The date and time when the calendar event was last updated. | |
CalendarEventsUrlsPast | String | True |
URL of the past calendar event. | |
CalendarEventsUrlsUpcoming | String | True |
The date and time when the calendar was last updated. | |
Color | String | True |
The color of the calendar. | |
CreatedAt | Datetime | True |
The date and time when the document was created. | |
CreatorAvatarUrl | String | False |
Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | False |
Creator full-size avatar Url. | |
CreatorId | String | False |
The Id of the creator of the calendar. | |
CreatorName | String | False |
The name of the creator of the calendar. | |
Name | String | False |
The name of the calendar. | |
UpdatedAt | Datetime | True |
The date and time when the calendar was last updated. | |
Url | String | True |
The URL of the calendar. |
Retrieve, create, update, and delete Documents on Basecamp.
すべてのDocuments(すべてのProjects の)を取得し、特定のProject に属するDocuments を選択し、もしくは特定のProject と特定のDocument を同時に指定することが可能です(ProjectId およびId は、Basecamp によって検索条件としてサポートされているカラムです)。
Documents をUpdatedAt、CreatedAt、もしくはTitle でソートすることができます。
SELECT * FROM Documents WHERE ProjectId = '11111111' AND Id = '1234567689' SELECT * FROM Documents ORDER BY UpdatedAt SELECT * FROM Documents ORDER BY Title DESC
主要なProject に新しいDocument を追加するには、ProjectId を指定し、Document のタイトルもしくは何らかのContent を入力します。
INSERT INTO Documents (ProjectId, Title, Content) VALUES ('11111111', 'Memo', 'This is our document content')
Document の更新および削除には、ProjectId およびDocument Id を指定します。
UPDATE Documents SET Title = 'Updated Memo3', Content = 'Updated Content of Memo.' WHERE ProjectId = '11111111' AND Id = '1234567689' DELETE FROM Documents WHERE ProjectId = '11111111' AND Id = '12345678'
Name | Type | ReadOnly | References | Description |
Id [KEY] | String | True |
The unique identifier for the document. | |
AppUrl | String | True |
The app URL. | |
BucketAppUrl | String | True |
The topic bucket app url. | |
BucketColor | String | True |
The to-do bucket color. | |
BucketId | String | True |
The to-do bucket Id. | |
BucketName | String | True |
The to-do bucket name. | |
BucketType | String | True |
The to-do bucket type. | |
BucketUrl | String | True |
The to-do bucket URL. | |
Content | String | False |
The content of the document. | |
CreatedAt | Datetime | True |
The date and time when the document was created. | |
CreatorAvatarUrl | String | False |
Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | False |
Creator full-size avatar URL. | |
CreatorId | String | False |
The Id of the creator of the document. | |
CreatorName | String | False |
The name of the creator of the document. | |
LastUpdaterId | String | False |
The Id of the person who last updated the document. | |
LastUpdaterName | String | False |
The name of the person who last updated the document. | |
Private | Boolean | False |
Whether this to-do is private. | |
SubscribersId | String | False |
The Id of the subscriber to the document. | |
SubscribersName | String | False |
The name of the subscriber to the document. | |
Title | String | False |
The title of the document. | |
Trashed | Boolean | False |
Boolean value for deleted to-dos. | |
UpdatedAt | Datetime | True |
The date and time when the document was last updated. | |
URL | String | True |
The URL of the document. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description |
ProjectId | String |
The Id of the Project associated with the document. |
Retrieve and delete People on Basecamp.
組織のすべての人を取得し、より多くの情報を取得するにはId を指定し、だれが削除されたかを確認できます(管理者アクセスが必要です)。Basecamp において検索条件としてサポートされているカラムはId およびTrashed です。
SELECT * FROM People WHERE Id = '123456789' SELECT * FROM People WHERE Trashed = true
Accesses テーブルを通じてProjects に新しい人を直接招待することができます。
Update 処理はPeople テーブルではサポートされていません。
組織からレコードを削除するにはPerson のId を指定します。
DELETE FROM People WHERE Id = '123456789'
Name | Type | ReadOnly | References | Description |
Id [KEY] | String | True |
The unique identifier for the person. | |
AccountOwner | Boolean | True |
Boolean value to show if the current person is the account owner. | |
Admin | Boolean | True |
Boolean value to show if the current person is an admin or not. | |
AssignedTodosCount | Integer | True |
Number of assigned to-dos. | |
AssignedTodosUpdatedAt | Datetime | True |
The date and time when the record was updated. | |
AssignedTodosUrl | String | True |
The URL of the assigned to-do. | |
AppUrl | String | True |
The app URL. | |
AvatarUrl | String | True |
The avatar URL of the person. | |
CalendarEventsTodayCount | Integer | True |
Number of events for today. | |
CanCreateProjects | Boolean | True |
Whether the person can create projects or not. | |
CreatedAt | Datetime | True |
The date and time when the record was created. | |
EmailAddress | String | True |
The email address of the person. | |
EventsAppUrl | String | True |
The events app URL. | |
EventsCount | Integer | True |
Number of events. | |
EventsUpdatedAt | Datetime | True |
The date and time when the event was updated. | |
EventsUrl | String | True |
The URL of the assigned to-do. | |
FullsizeAvatarUrl | String | True |
The full-size avatar URL of the person. | |
HasBasecampSiblings | Boolean | False |
Boolean value for Basecamp siblings. | |
IdentityId | String | True |
The identity Id of the person. | |
Name | String | True |
The name of the person. | |
OutstandingTodosCount | Integer | True |
Number of outstanding to-dos. | |
Trashed | Boolean | False |
Boolean value for deleted people. | |
UpdatedAt | Datetime | True |
The date and time when the record was last updated. | |
Url | String | True |
The URL of the person. |
Retrieve, create, update, and delete Projects on Basecamp.
組織のすべてのアクティブなProjects を取得し、Drafts およびArchived Projects でレコードをフィルタし、より多くの情報にはProject Id を設定することができます。Basecamp において検索条件としてサポートされているカラムは、Drafts、Archived、およびId です。
SELECT * FROM Projects WHERE Drafts = True SELECT * FROM Projects WHERE Advanced = True SELECT * FROM Projects WHERE Id = '11111111'
新しいProject を作成するには、少なくてもName およびDescription プロパティを指定する必要があります。
INSERT INTO Projects (Name, Description) VALUES ('Test Proj', 'This is a new test project.')
アクセスしたことのあるプロジェクトを更新もしくは削除するには、Project Id を設定してください。
UPDATE Projects SET Name = 'Updated Proj', Description = 'This is an updated test project.' WHERE Id = '11111111' DELETE FROM Projects WHERE Id = '11111111'
Name | Type | ReadOnly | References | Description |
Id [KEY] | String | True |
The unique identifier of the project. | |
AccessesAppUrl | String | True |
The accesses app URL. | |
AccessesCount | Integer | True |
The accesses count. | |
AccessesUpdatedAt | Datetime | True |
Time when accesses were updated. | |
AccessesUrl | String | True |
The accesses URL. | |
AppUrl | String | True |
The app URL. | |
Archived | Boolean | False |
When user archives a project, this value will be set to true. | |
AttachmentsAppUrl | String | True |
The attachments app URL. | |
AttachmentsCount | Integer | True |
The attachments count. | |
AttachmentsUpdatedAt | Datetime | True |
Time when attachments were updated. | |
AttachmentsUrl | String | True |
The attachments URL. | |
CalendarEventsAppUrl | String | True |
The calendar events app URL. | |
CalendarEventsCount | Integer | True |
The calendar events count. | |
CalendarEventsUpdatedAt | Datetime | True |
Time when calendar events were updated. | |
CalendarEventsUrl | String | True |
The calendar events URL. | |
Color | String | True |
Color. | |
CreatedAt | Datetime | True |
The creation time of the project. | |
CreatorAvatarUrl | String | False |
Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | False |
Creator full-size Avatar URL. | |
CreatorId | String | False |
The Id of the creator. | |
CreatorName | String | False |
The name of the creator. | |
Description | String | False |
The description of the project. | |
DocumentsAppUrl | String | True |
The documents app URL. | |
DocumentsCount | Integer | True |
The documents count. | |
DocumentsUpdatedAt | Datetime | True |
Time when documents were updated. | |
DocumentsUrl | String | True |
The documents URL. | |
Drafts | Boolean | False |
Boolean value for a draft project. | |
ForwardsAppUrl | String | True |
The forwards app URL. | |
ForwardsCount | Integer | True |
The forwards count. | |
ForwardsUpdatedAt | Datetime | True |
Time when forwards were updated. | |
ForwardsUrl | String | True |
The forwards URL. | |
IsClientProject | Boolean | False |
Whether the project is related to clients or not. | |
LastEventAt | Datetime | False |
Time when the project was last modified. | |
Name | String | False |
The name of the project. | |
Starred | Boolean | False |
Boolean value for a starred project. | |
Template | Boolean | False |
Boolean value for a template project. | |
TodolistsAppUrl | String | True |
The todolists app URL. | |
TodolistsCompletedCount | Integer | True |
The todolists completed count. | |
TodolistsRemainingCount | Integer | True |
The todolists remaining count. | |
TodolistsUpdatedAt | Datetime | True |
Time when todolists were updated. | |
TodolistsUrl | String | True |
The todolists URL. | |
TopicsAppUrl | String | True |
The topics app URL. | |
TopicsCount | Integer | True |
The topics count. | |
TopicsUpdatedAt | Datetime | True |
Time when topics were updated. | |
TopicsUrl | String | True |
The topics URL. | |
Trashed | Boolean | False |
Boolean value for a trashed project. | |
UpdatedAt | Datetime | True |
Time when the project was updated. | |
URL | String | True |
The URL of the project. |
ビューは、カラムと疑似カラムで構成されます。ビューは、データを示すという点でテーブルに似ていますが、ビューでは更新はサポートされません。通常、ビューとして表されるエンティティは、読み取り専用のエンティティです。多くの場合、これらのデータはストアドプロシージャを使用することで更新できます(その機能がデータソースに適用できる場合)。
ビューに対しては、通常のテーブルと同じようにクエリを実行でき、このときに返されるデータも同様です。
ビューとして公開されるクエリなどの動的ビューや、project_team ワークアイテムの特定の組み合わせを検索するためのビューがサポートされています。
Name | Description |
Attachments | Retrieve Attachments on Basecamp. |
Comments | Retrieve, create, update, and delete Calendars on Basecamp. |
Events | Retrieve activity Events on Basecamp. |
Forwards | Retrieve Forwards on Basecamp. |
ToDoLists | Retrieve ToDoLists on Basecamp. |
ToDos | Retrieve ToDos on Basecamp. |
Topics | Retrieve Topics on Basecamp. |
Retrieve Attachments on Basecamp.
Name | Type | References | Description |
Id [KEY] | String | The Id of the attachment. | |
Key | String | The key of the attachment. | |
Name | String | The name of the attachment. | |
ByteSize | Int | The size of the attachment in bytes. | |
CreatedAt | Datetime | The date when the attachment was created. | |
UpdatedAt | Datetime | The date when the attachment was last updated. | |
Url | String | The Url of the attachment. | |
AppUrl | String | The AppUrl of the attachment. | |
ThumbnailUrl | String | The Thumbnail Url of the attachment. | |
Private | Boolean | Indicates if the attachemtn is private. | |
Trashed | Boolean | Indicates if the attachment is trashed. | |
Tags | String | The tags of the attachment. | |
CreatorId | String | The Id of the attachment creator. | |
CreatorName | String | The name of the attachment creator. | |
CreatorAvatarUrl | String desc= | ||
CreatorFullsizeAvatarUrl | String desc= | ||
AttachableId | String | The Id of the attachable. | |
AttachableType | String | The type of the attachable. | |
AttachableUrl | String | The Url of the attachable. | |
AttachableAppUrl | String | The AppUrl of the attachable. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
ProjectId | String | The id of the project |
Retrieve, create, update, and delete Calendars on Basecamp.
プラットフォーム上のすべてのアクティブなComments を取得できます。テーブルの任意のフィールドで結果をフィルタリングできます。
SELECT * FROM Comments SELECT * FROM Comments WHERE ProjectId = '1111111' AND ItemType = 'Message'
Name | Type | References | Description |
Id [KEY] | String | The unique identifier for the comment. | |
ProjectId [KEY] | String | The unique identifier for the project where the comment is contained. | |
ItemId | String | The unique identifier for the topic containing the comment. | |
ItemType | String | Type of the object containing the comment. Valid values are: Message, Document, Forward, CalendarEvent, Upload, Todolist, Todo. | |
AttachmentsAggregate | String | The attachments related to the comment. | |
Content | String | The content of the comment. | |
Private | Boolean | Privacy of the comment | |
Trashed | Boolean | If the comment was trashed or not. | |
CreatedAt | Datetime | The date and time when the document was created. | |
CreatorAvatarUrl | String | Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | Creator full-size avatar Url. | |
CreatorId | String | The Id of the creator of the comment. | |
CreatorName | String | The name of the creator of the comment. | |
UpdatedAt | Datetime | The date and time when the comment was last updated. |
Retrieve activity Events on Basecamp.
Events のすべてのアクティビティの取得、もしくは作成日でデータをフィルタできます。Basecamp において検索条件としてサポートされているカラムおよび演算子は以下のとおりです。
カラム | 演算子 |
ProjectId | = |
PersonId | = |
CreatedAt | >, >= |
例えば、次のクエリは、特定の日にち以降に特定の人に発生したアクティビティを取得します。
SELECT * FROM Events WHERE CreatedAt >= '2016-01-01' AND PersonId = '1111111'
Name | Type | References | Description |
Id [KEY] | String | The unique identifier of the event. | |
Action | String | The action description for the event. | |
BucketAppUrl | String | The calendar events app URL. | |
BucketColor | String | The bucket event color. | |
BucketId | String | The bucket event Id. | |
BucketName | String | The bucket event name. | |
BucketType | String | The bucket event type. | |
BucketUrl | String | The bucket event URL. | |
CreatedAt | Datetime | The date and time when the event was created. | |
CreatorAvatarUrl | String | Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | Creator full-size avatar URL. | |
CreatorId | String | The Id of the event creator. | |
CreatorName | String | The name of the event creator. | |
EventableAppUrl | String | Eventable App URL. | |
EventableId | String | Eventable Id. | |
EventableType | String | Eventable type. | |
EventableUrl | String | Eventable URL. | |
Excerpt | String | The type of excerpt for this event. | |
HtmlUrl | String | The HTML URL of the event. | |
Private | Boolean | Whether the event is private. | |
RawExcerpt | String | The raw excerpt type for this event. | |
Summary | String | The summary for the event. | |
Target | String | The target project of this event. | |
UpdatedAt | Datetime | The date and time when the event was last updated. | |
URL | String | The URL of the event. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
ProjectId | String | The Id of the Project associated with this event. | |
PersonId | String | The Id of the Person associated with this event. |
Retrieve Forwards on Basecamp.
Name | Type | References | Description |
Id [KEY] | String | The id of the forward. | |
Subject | String | The subject of the forward. | |
From | String | ||
CreatedAt | Datetime | The date when the forward was created. | |
UpdatedAt | Datetime | The date when the forward was last updated. | |
Url | String | The Url of the forward. | |
AppUrl | String | The AppUrl of the forward. | |
Private | Boolean | Indicates if the forward is private. | |
Trashed | Boolean | Indicates if the forward is trashed. | |
BucketId | String | The bucket Id of the forward. | |
BucketName | String | The bucket name of the forward. | |
BucketType | String | The bucket type of the forward. | |
BucketUrl | String | The bucket Url of the forward. | |
BucketAppUrl | String | The bucket app url of the forward. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
ProjectId | String | The Id of the project |
Retrieve ToDoLists on Basecamp.
次のカラムはBasecamp において検索条件としてサポートされています:
CreateAt は'>' もしくは'>=' 演算子と共に使うことができます。
次のクエリは、特定の日にちから、あるProject に属する完了されたToDoLists のみを取得します:
SELECT * FROM ToDoLists WHERE ProjectId = '11111111' AND Completed = True AND CreatedAt > '2016-01-01'M
次のクエリは、あるProject から1つのToDoList を取得します。
SELECT * FROM ToDoLists WHERE ProjectId = '11111111' AND Id = '123456789'
次のクエリは、ある個人にアサインされたToDoLists を取得します。
SELECT * FROM ToDoLists WHERE PersonId = '11111111'
Name | Type | References | Description |
Id [KEY] | String | The unique identifier of the topic. | |
AppUrl | String | The app URL. | |
AssignedTodos | String | Assigned to-dos. | |
BucketAppUrl | String | The topic bucket app URL. | |
BucketColor | String | The to-do bucket color. | |
BucketId | String | The to-do bucket Id. | |
BucketName | String | The to-do bucket name. | |
BucketType | String | The to-do bucket type. | |
BucketUrl | String | The to-do bucket URL. | |
Completed | Boolean | Whether the to-do list is completed. | |
CompletedCount | Integer | Number of completed to-dos. | |
CreatedAt | Datetime | The date and time when the record was created. | |
CreatorAvatarUrl | String | Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | Creator full-size avatar URL. | |
CreatorId | String | The Id of the creator. | |
CreatorName | String | The name of the creator. | |
Description | String | The to-do list description. | |
Name | String | The name of the to-do list. | |
Position | Integer | Position number of the current to-do list. | |
Private | Boolean | Whether the to-do list is private. | |
RemainingCount | Integer | Number of unfinished to-dos. | |
SubscribersId | String | The Id of the subscriber. | |
SubscribersName | String | The name of the subscriber. | |
ToDos | String | To-dos list. | |
Trashed | Boolean | Boolean value for deleted to-do lists. | |
UpdatedAt | Datetime | The date and time when the record was last updated. | |
URL | String | The URL of the to-do list. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
ProjectId | String | The Id of the Project associated with the to-do list. | |
PersonId | String | The Id of the Person associated with the to-do list. |
Retrieve ToDos on Basecamp.
Basecamp において検索条件としてサポートされているカラムは以下のとおりです:
DueAt およびDueOn は'>' もしくは'>=' 演算子と共に使うことができます。
次のクエリは、あるProject に属する完了されたToDos のみを取得します。
SELECT * FROM ToDos WHERE ProjectId = '11111111' AND Completed = True
次のクエリは、ある日にちを基準に期限が来ているToDos のみをフィルタします。
SELECT * FROM ToDos WHERE ProjectId = '11111111' AND DueAt > '2016-01-01'
次のクエリは、Todo リストに属する残りのToDos をリストします。
SELECT * FROM ToDos WHERE ProjectId = '11111111' AND ToDoListId = '123456789' AND Remaining = true
Name | Type | References | Description |
Id [KEY] | String | The unique identifier of the topic. | |
AppUrl | String | The app URL. | |
AssigneeId | String | Id of the person assigned to. | |
AssigneeName | String | Name of the person assigned to. | |
AssigneeType | String | Type of assignee. | |
CommentsCount | Integer | Number of comments on this to-do. | |
Completed | Boolean | Whether the to-do is completed. | |
Content | String | Description of the to-do. | |
CreatedAt | Datetime | The date and time when the record was created. | |
CreatorAvatarUrl | String | Creator Avatar URL. | |
CreatorFullsizeAvatarUrl | String | Creator full-size avatar URL. | |
CreatorId | String | The Id of the creator. | |
CreatorName | String | The name of the creator. | |
DueAt | Datetime | The date and time when the to-do is set due. | |
DueOn | Datetime | The date and time when the to-do is set due. | |
Position | Integer | Position number of the current to-do on the list. | |
Private | Boolean | Whether this to-do is private. | |
Remaining | Boolean | Boolean value for remaining to-dos. | |
SubscribersId | String | The Id of the subscriber. | |
SubscribersName | String | The name of the subscriber. | |
ToDoList | String | To-do list. | |
ToDoListId | String | The to-do list Id. | |
Trashed | Boolean | Boolean value for deleted to-dos. | |
UpdatedAt | Datetime | The date and time when the record was last updated. | |
URL | String | The URL of the to-do. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
ProjectId | String | The Id of the Project associated with the to-do. |
Retrieve Topics on Basecamp.
すべてのアクティブなTopics、Project に属するTopics のソート、もしくはアーカイブされたTopics のみを取得することができます(ProjectId およびArchived は、Basecamp によって検索条件としてサポートされているカラムです)。
SELECT * FROM Topics WHERE ProjectId = '1111111' ORDER BY UpdatedAt ASC SELECT * FROM Topics WHERE ProjectId = '1111111' AND Archived = True
Name | Type | References | Description |
Id [KEY] | String | The unique identifier of the topic. | |
Archived | Boolean | Boolean value for archived topics. | |
Attachments | Integer | The number of attachments to the topic. | |
BucketAppUrl | String | The topic bucket app URL. | |
BucketColor | String | The bucket topic color. | |
BucketId | String | The bucket topic Id. | |
BucketName | String | The bucket topic name. | |
BucketType | String | The bucket topic type. | |
BucketUrl | String | The bucket topic URL. | |
CreatedAt | Datetime | The date and time when the record was created. | |
Excerpt | String | The excerpt from the latest comment on the topic. | |
LastUpdaterId | String | The Id of the person who made the last comment. | |
LastUpdaterName | String | The name of the person who last updated the topic. | |
Private | Boolean | Whether the topic is private. | |
Title | String | The title of the topic. | |
TopicableAppUrl | String | The URL of the topicable Basecamp entity. | |
TopicableId | String | The Id of the topicable Basecamp entity. | |
TopicableType | String | The type of the topicable Basecamp entity. | |
TopicableUrl | String | The URL of the topicable Basecamp entity. | |
Trashed | Boolean | Boolean value for deleted topics. | |
UpdatedAt | Datetime | The date and time when the record was last updated. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
ProjectId | String | The Project Id. |
このセクションでは、Basecamp 3アカウントへの接続に使用できるテーブル、ビュー、およびストアドプロシージャ について説明します。
Sync App はBasecamp のデータを、標準のSQL ステートメントを使用してクエリできるテーブルのリストにモデル化します。
一般的には、Basecamp テーブルのクエリは、リレーショナルデータベースのテーブルのクエリと同じです。時には特別なケースもあります。例えば、テーブルの特定のカラムデータを取得するために特定のカラムをWHERE 句に含める必要がある場合などです。これは通常、特定のカラムを取得するために行ごとに個別のリクエストを行う必要がある場合に必要です。これらの特別な状況は、以下にリンクされているテーブルページの上部に明確に文書化されています。
Name | Description |
CalendarEvents | Retrieve calendar events on Basecamp 3. |
Comments | Retrieve comments on a Basecamp 3 recording. |
Documents | Retrieve, create, update, and delete Documents on Basecamp 3. |
Messages | Retrieve messages on Basecamp 3. |
Projects | Retrieve, create, update, and delete Projects on Basecamp 3. |
ToDoLists | Retrieve ToDoLists on Basecamp 3. |
ToDos | Retrieve ToDos on Basecamp 3. |
Vaults | Retrieve Vaults(folders) on Basecamp 3 folders. |
Retrieve calendar events on Basecamp 3.
指定したプロジェクトのCalendar Events をクエリできます。
次のカラムはBasecamp において検索条件としてサポートされています:
If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM CalendarEvents WHERE ProjectId = '11111111' AND CalendarId = '22222222' AND Status = 'active'
You can also retrieve a single calendar event by specifying the Id.
SELECT * FROM CalendarEvents WHERE ProjectId = '11111111' AND Id = '33333333'
You can insert a new Calendar Event by providing the ProjectId, CalendarId, StartsAt, EndsAt, and Summary as required parameters.
INSERT INTO CalendarEvents (ProjectId, CalendarId, Summary, StartsAt, EndsAt, Description, Notify, ParticipantsIds ) VALUES ( '1111111', '2222222', 'summary test', '2017-11-11 09:00Z', '2017-11-11 11:00Z', 'description', 'false', '3333333, 4444444')
You can also change the Calendar Event by providing the ProjectId and event Id.
UPDATE CalendarEvents SET Summary = 'Updated summary', StartsAt = '2017-11-12', EndsAt = '2017-11-12', AllDay = 'true' WHERE ProjectId = '11111111' AND Id = '1234567689'
Calendar Events cannot be deleted.
Name | Type | ReadOnly | References | Description |
Id [KEY] | Long | True |
The unique identifier of the calendar event. | |
ProjectId | Long | True |
Projects.Id |
The Project Id associated with the schedule. |
CalendarId | Long | True |
Projects.CalendarId |
The Calendar Id that the event belongs to. |
Status | String | True |
The status of the calendar event. | |
Type | String | True |
The type of the returned record. | |
CreatedAt | Datetime | True |
The date and time when the calendar event was created. | |
UpdatedAt | Datetime | True |
The date and time when the calendar event was last updated. | |
Description | String | False |
Provided description for the calendar event. | |
AllDay | Boolean | False |
Indicates that the event is an all day event. | |
StartsAt | Datetime | False |
The date and time when the calendar event starts. | |
EndsAt | Datetime | False |
The date and time when the calendar event ends. | |
Summary | String | False |
Provided summary for the calendar event. | |
ParticipantsIds | String | False |
A list of comma separated participant ids. | |
ParticipantsNames | String | True |
A list of comma separated participant names. | |
ParentTitle | String | True |
Title of the parent. | |
ParentType | String | True |
Type of the parent. | |
BucketName | String | True |
Name of the containing bucket. | |
BucketType | String | True |
Type of the containing bucket. | |
CreatorId | Long | True |
People.Id |
The Id of the creator. |
CreatorName | String | True |
The name of the creator. | |
CommentsCount | Integer | True |
Number of comments the document has. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description |
Notify | String |
When set to true, will notify the participants about the event. |
Retrieve comments on a Basecamp 3 recording.
The columns in Comments are filtered client side.You can either get all comments for a recording by specifying the RecordingId or you can get a certain comment by specifying its Id.
If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM Comments WHERE ProjectId = '11111111' AND RecordingId = '222222222' AND Content = 'Exempli gratia' AND CreatedAt < '2017-04-18T15:53:38.040-06:00'
You can also retrieve a single comment by specifying the Id (given that you've specified the ProjectId in the connection)
SELECT * FROM Comments WHERE Id = '1234567'
You can insert a new comment, by providing the required ProjectId, RecordingId, and Content.
INSERT INTO Comments (Content, ProjectId, RecordingId) VALUES ('Very informative document. Thanks!', 114857506, 392946856)
You can change the columns that are not read-only by providing the Id, ProjectId, and new values.
UPDATE Comments SET Content='I like this better now' WHERE ProjectId='18061798' AND Id='1308746423'
Comments cannot be deleted (unsupported by the API).
Name | Type | ReadOnly | References | Description |
Id [KEY] | String | True |
The ID of the comment. | |
Content | String | False |
The conent of the comment. | |
Title | String | True |
The title of the comment. | |
Status | String | True |
The status of the comment. | |
CreatedAt | Datetime | True |
The time the comment was created. | |
UpdatedAt | Datetime | True |
The time the comment was last updated. | |
InheritsStatus | Boolean | True |
Whether this comment inherits its status or not. | |
URL | String | True |
The URL of the comment. | |
VisibleToClients | Boolean | True |
Whether this comment is visible to clients or not. | |
ProjectId | Long | False |
Projects.Id |
The ID of the project this comment is a child of. A project contains recordings. |
ProjectName | String | True |
The name of the project this comment is a child of. | |
RecordingId | Long | False |
Recordings.Id |
The ID of the recording the comment is written on. A recording can be a comment, document, message, question::answer, schedule::entry, todo, todolist or upload. |
CommenterId | String | True |
The ID of the commenter. | |
CommenterName | String | True |
The name of the commenter. | |
CommenterIsAdmin | Boolean | True |
Whether the commenter is an admin or not. | |
CommenterIsOwner | Boolean | True |
Whether the commenter is the owner of the recording or not. | |
CommenterTitle | String | True |
The commenter's title. | |
CommenterEmail | String | True |
The email address of the commenter. | |
CommenterAvatarURL | String | True |
The URL of the avatar of the commenter. | |
CommenterCompanyId | String | True |
The company ID of the commenter. | |
CommenterCompanyName | String | True |
The name of the company of the commenter. | |
AppURL | String | True |
The URL of the app this comment belongs to. | |
BookmarkURL | String | True |
The URL of the bookmark. | |
CommenterAttachableSGID | String | True |
Te attachable SGID of the commenter. |
Retrieve, create, update, and delete Documents on Basecamp 3.
You can retrieve all documents belonging to a certain Project and Vault only, or specify a Project and a certain Document at the same time (ProjectId, VaultId and Id are the only columns supported as search criteria by Basecamp).
If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM Documents WHERE ProjectId = '11111111' AND VaultId = '222222222' SELECT * FROM Documents WHERE ProjectId = '11111111' AND Id = '1234567689'
To add a new document to a major project, you need to specify the ProjectId, Vaultid, Title, Content, and Status (optional).
INSERT INTO Documents (ProjectId, Vaultid, Title, Content, Status) VALUES ('11111111', '222222222', 'Memo', 'This is our document content', 'active')
Specify the ProjectId and the document Id to update a document.
UPDATE Documents SET Title = 'Updated Memo3', Content = 'Updated Content of Memo.' WHERE ProjectId = '11111111' AND Id = '1234567689'
DELETE is not supported for this table.
Name | Type | ReadOnly | References | Description |
Id [KEY] | Long | True |
The unique identifier for the document. | |
ProjectId | Long | True |
Projects.Id |
The Id of the Project associated with the document. |
VaultId | Long | True |
Vaults.Id |
The Vault Id associated with the document. |
Status | String | False |
The status of the vault. | |
Title | String | False |
The title of the document. | |
Content | String | False |
The content of the Document | |
Type | String | True |
The type of the returned record. | |
CreatedAt | Datetime | True |
The date and time when the document was created. | |
UpdatedAt | Datetime | True |
The date and time when the document was last updated. | |
ParentTitle | String | True |
Title of the parent. | |
ParentType | String | True |
Type of the parent. | |
BucketName | String | True |
Name of the containing bucket. | |
BucketType | String | True |
Type of the containing bucket. | |
CreatorId | Long | True |
People.Id |
The Id of the creator. |
CreatorName | String | True |
The name of the creator. | |
CommentsCount | Integer | True |
Number of comments the document has. |
Retrieve messages on Basecamp 3.
You can query messages posted on the message board of the specified project.
The columns supported as search criteria by Basecamp are ProjectId, MessageBoardId.
If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM Messages WHERE ProjectId = '11111111' AND MessageBoardId = '22222222'
You can also retrieve a single message by specifying the Id.
SELECT * FROM Messages WHERE ProjectId = '11111111' AND Id = '33333333'
You can insert a new message, by providing the required ProjectId, MessageBoardId, and Subject in addition to the message related parameters.
INSERT INTO Messages (ProjectId, MessageBoardId, Content, Subject, Status ) VALUES ('1111111', '2222222', 'Content test', 'Subject test', 'active')
You can also update messages by providing the ProjectId and message Id.
UPDATE Messages SET subject = 'Updated subject', content = 'Updated content' WHERE ProjectId = '11111111' AND Id = '1234567689'
Messages cannot be deleted.
Name | Type | ReadOnly | References | Description |
Id [KEY] | Long | True |
The unique identifier of the message. | |
ProjectId | Long | True |
Projects.Id |
The Project Id associated with the schedule. |
MessageBoardId | Long | True |
Projects.MessageBoardId |
The Message Board Id that the message belongs to. |
Status | String | False |
The status of the message | |
Type | String | True |
The type of the returned record. | |
CreatedAt | Datetime | True |
The date and time when the message was created. | |
UpdatedAt | Datetime | True |
The date and time when the message was last updated. | |
Content | String | False |
Provided content for the message | |
Subject | String | False |
Subject of the message | |
ParentTitle | String | True |
Title of the parent. | |
ParentType | String | True |
Type of the parent. | |
BucketName | String | True |
Name of the containing bucket. | |
BucketType | String | True |
Type of the containing bucket. | |
CreatorId | Long | True |
People.Id |
The Id of the creator. |
CreatorName | String | True |
The name of the creator. | |
CategoryId | Long | False |
The Id of the category. | |
CategoryName | String | True |
The name of the category. | |
CommentsCount | Integer | True |
Number of comments the document has. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description |
IncludeReplies | Boolean |
Set this to true to retrieve replies for each message. |
Retrieve, create, update, and delete Projects on Basecamp 3.
You can retrieve all active Projects from the organization, or set a project Id to retrieve a single project.Id is the only column supported as search criteria by Basecamp.
SELECT * FROM Projects SELECT * FROM Projects WHERE Id = '11111111'
Specify at least the Name and optionally Description properties to create a new Project.
INSERT INTO Projects (Name, Description) VALUES ('Test Proj', 'This is a new test project.')
Set the Project Id to update or delete a project you have access to.
UPDATE Projects SET Name = 'Updated Project', Description = 'This is an updated test project.' WHERE Id = '11111111' DELETE FROM Projects WHERE Id = '11111111'
Name | Type | ReadOnly | References | Description |
Id [KEY] | Long | True |
The unique identifier of the project. | |
Status | String | True |
The status of the project. | |
Purpose | String | True |
The purpose of the project. | |
CreatedAt | Datetime | True |
The creation time of the project. | |
UpdatedAt | Datetime | True |
Time when the project was updated. | |
Description | String | False |
The description of the project. | |
Name | String | False |
The name of the project. | |
Bookmarked | Boolean | False |
Boolean value for a bookmarked project. | |
CalendarId | Long | True |
Id of the project's Calendar. | |
ChatId | Long | True |
Id of the project's Chat. | |
ToDoSetId | Long | True |
Id of the project's ToDo Set. | |
MessageBoardId | Long | True |
Id of the project's Message Board. | |
QuestionnaireId | Long | True |
Id of the project's Questionnaire. | |
VaultId | Long | True |
Id of the project's Vault. | |
InboxId | Long | True |
Id of the project's Inbox. | |
KanbanBoardId | Long | True |
Id of the project's Kanban Board. |
Retrieve ToDoLists on Basecamp 3.
次のカラムはBasecamp において検索条件としてサポートされています:
ToDoSetId can be retrieved in the Projects table.
The following query retrieves only completed to-do lists belonging to a certain Project and a certain Status. If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM ToDoLists WHERE ProjectId = '11111111' AND ToDoSetId = '2222222' AND Status = 'active'
The following query retrieves a single ToDoList from a certain Project.
SELECT * FROM ToDoLists WHERE ProjectId = '11111111' AND Id = '123456789'
Specify the Name, ProjectId, Description (optional), and the ToDoSetId to insert a to-do list.
INSERT INTO ToDoLists (Name, Description, ProjectId, ToDoSetId ) VALUES ('Name', 'desc', '11111111', '2222222')
Basecamp allows changing the name and description of the to-do list, provided that the ProjectId and to-do list Id are included in the query:
UPDATE ToDoLists Set Name = 'Updated Name', Description = 'Updated desc' WHERE ProjectId = '11111111' AND Id = '1234567689'
To-do lists cannot be deleted.
Name | Type | ReadOnly | References | Description |
Id [KEY] | Long | True |
The unique identifier of the topic. | |
ProjectId | Long | True |
Projects.Id |
The Id of the Project associated with the to-do list. |
ToDoSetId | Long | True |
Projects.ToDoSetId |
The Id of the To Do Set the to-do list belongs to. |
Status | String | True |
The to-do status. | |
Type | String | True |
The record type. | |
Name | String | False |
The to-do name. | |
Completed | Boolean | True |
The to-do state. | |
CompletedRatio | String | True |
The to-do state in ratio. | |
Description | String | False |
The to-do list description. | |
CreatedAt | Datetime | True |
The date and time when the event was created. | |
UpdatedAt | Datetime | True |
The date and time when the record was last updated. | |
BucketName | String | True |
The to-do list bucket name. | |
BucketType | String | True |
The to-do list bucket type. | |
ParentTitle | String | True |
Title of the parent. | |
ParentType | String | True |
Type of the parent. | |
CreatorId | Long | True |
People.Id |
Event creator Id. |
CreatorAttachableSgid | String | True |
Event creator Attachable SGID. | |
CreatorName | String | True |
Event creator Name. | |
CreatorEmailAddress | String | True |
Event creator Email Address. | |
CreatorTitle | String | True |
Event creator Title. | |
CreatorBio | String | True |
Event creator Bio. | |
CreatorCreatedAt | Datetime | True |
Event creator creation date and time. | |
CreatorUpdatedAt | Datetime | True |
Event creator update date and time. | |
CreatorAdmin | Boolean | True |
Boolean indicationg if the event creator is an admin. | |
CreatorOwner | Boolean | True |
Boolean indicationg if the event creator is an owner. | |
CreatorTimeZone | String | True |
Event creator's timezone. | |
CreatorCompanyId | Long | True |
Event creator's company Id. | |
CreatorCompanyName | String | True |
Event creator's company name. | |
CommentsCount | Integer | True |
Number of coments the document has. |
Retrieve ToDos on Basecamp 3.
次のカラムはBasecamp において検索条件としてサポートされています:
By default, only active to-dos will be retrieved.
If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM ToDos WHERE ProjectId = '11111111' AND ToDoListId = '222222222' AND Status = 'active' AND Completed = True
You can also retrieve a single to-do by specifying the Id.
SELECT * FROM ToDos WHERE ProjectId = '11111111' AND Id = '33333333'
You can insert a new to-do by providing the required ProjectId, ToDoListId, and Content in addition to the to-do related parameters.
INSERT INTO ToDos (Content, Description , DueOn, StartsOn, AssigneeIds, ProjectId, ToDoListId ) VALUES ('What to do','description','2017-11-11', '2017-11-12' , '333333333','1111111111', '22222222')
You can change the columns that are not read-only by providing the ProjectId, to-do Id, and new values.
UPDATE ToDos Set Content = 'Updated content' WHERE ProjectId = '11111111' AND Id = '1234567689'
You can change the Completed state of the to-do by providing the ProjectId and to-do Id. The Completed column can only be updated standalone, and other columns cannot be updated in the same query.
UPDATE ToDos Set Completed = True WHERE ProjectId = '11111111' AND Id = '1234567689'
To-dos cannot be deleted.
Name | Type | ReadOnly | References | Description |
Id [KEY] | Long | True |
The unique identifier of the todo. | |
ProjectId | Long | True |
Projects.Id |
The Id of the Project associated with the to-do list. |
ToDoListId | Long | True |
ToDoLists.Id |
The Id of the To Do list the to-do belongs to. |
Status | String | True |
The state the todo. | |
CreatedAt | Datetime | True |
The date and time when the event was created. | |
UpdatedAt | Datetime | True |
The date and time when the record was last updated. | |
StartsOn | Date | False |
The date and time when the todo should start. | |
DueOn | Date | False |
The date and time when the todo is due. | |
CommentsCount | Integer | True |
Number of coments the document has. | |
Description | String | False |
The to-do list description. | |
Content | String | False |
What to do. | |
AssigneesIds | String | False |
List of assigned user Ids. | |
Completed | Boolean | False |
The to-do state. | |
CompletedAt | Datetime | True |
The tdate and time when the todo was completed. | |
CompletionCreatorId | String | True |
The id of the user who completed the todo. | |
CompletionCreatorName | String | True |
The name of the user who completed the todo. | |
BucketName | String | True |
The to-do list bucket name. | |
BucketType | String | True |
The to-do list bucket type. | |
ParentTitle | String | True |
Title of the parent. | |
ParentType | String | True |
Type of the parent. | |
CreatorId | Long | True |
People.Id |
Event creator Id. |
CreatorAttachableSgid | String | True |
Event creator Attachable SGID. | |
CreatorName | String | True |
Event creator Name. | |
CreatorEmailAddress | String | True |
Event creator Email Address. | |
CreatorTitle | String | True |
Event creator Title. | |
CreatorBio | String | True |
Event creator Bio. | |
CreatorCreatedAt | Datetime | True |
Event creator creation date and time. | |
CreatorUpdatedAt | Datetime | True |
Event creator update date and time. | |
CreatorAdmin | Boolean | True |
Boolean indicationg if the event creator is an admin. | |
CreatorOwner | Boolean | True |
Boolean indicationg if the event creator is an owner. | |
CreatorTimeZone | String | True |
Event creator's timezone. | |
CreatorCompanyId | String | True |
Event creator's company Id. | |
CreatorCompanyName | String | True |
Event creator's company name. |
Retrieve Vaults(folders) on Basecamp 3 folders.
All projects have a primary Vault (folder).Additional Vaults may be nested under the primary Vault or any child Vault.
The columns supported as search criteria by Basecamp are ProjectId, VaultId, and Id. If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM Vaults WHERE ProjectId = '11111111' AND VaultId = '222222222'
You can also retrieve a single To-do by specifying the Id.
SELECT * FROM Vaults WHERE ProjectId = '11111111' Id = '333333333'
You can insert a new Vault by providing the ProjectId, VaultId, and Title, which are required parameters.
INSERT INTO Vaults (Title, ProjectId, Vaultid) VALUES ('InsertedVault', '11111111', '222222222')
You can update the Vault title by providing the ProjectId, VaultId, and the new title.
UPDATE Vaults SET Title = 'Updated title' WHERE ProjectId = '11111111' AND Id = '333333333'
Vaults cannot be deleted.
Name | Type | ReadOnly | References | Description |
Id [KEY] | Long | True |
The unique identifier of the topic. | |
ProjectId | Long | True |
Projects.Id |
The Project Id associated with the vault. |
Status | String | True |
The status of the vault. | |
Title | String | False |
The title of the returned record. | |
Type | String | True |
The type of the returned record. | |
CreatedAt | Datetime | True |
The date and time when the record was created. | |
UpdatedAt | Datetime | True |
The date and time when the record was last updated. | |
ParentId | Long | True |
Id of the parent. | |
ParentTitle | String | True |
Title of the parent. | |
ParentType | String | True |
Type of the parent. | |
BucketId | Long | True |
Id of the containing bucket. | |
BucketName | String | True |
Name of the containing bucket. | |
BucketType | String | True |
Type of the containing bucket. | |
CreatorId | Long | True |
People.Id |
The Id of the creator. |
CreatorName | String | True |
The name of the creator. | |
DocumentsCount | Integer | True |
Number of documents the vault contains. | |
UploadsCount | Integer | True |
Number of uploads the vault contains. | |
VaultsCount | Integer | True |
Number of vaults the vault contains. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description |
VaultId | Long |
The Vault Id that the record belongs to. |
ビューは、カラムと疑似カラムで構成されます。ビューは、データを示すという点でテーブルに似ていますが、ビューでは更新はサポートされません。通常、ビューとして表されるエンティティは、読み取り専用のエンティティです。多くの場合、これらのデータはストアドプロシージャを使用することで更新できます(その機能がデータソースに適用できる場合)。
ビューに対しては、通常のテーブルと同じようにクエリを実行でき、このときに返されるデータも同様です。
ビューとして公開されるクエリなどの動的ビューや、project_team ワークアイテムの特定の組み合わせを検索するためのビューがサポートされています。
Name | Description |
Assignments | Retrieve Assignments on Basecamp 3. |
Calendars | Retrieve calendars on Basecamp 3. |
Events | Retrieve activity Events on Basecamp 3. |
People | Retrieve People on Basecamp 3. |
ProjectTools | Retrieve project tools on Basecamp 3. |
Recordings | Retrieve recordings on Basecamp 3 folders. |
Uploads | Retrieve Uploads on Basecamp 3. |
Retrieve Assignments on Basecamp 3.
Name | Type | References | Description |
Id [KEY] | Long | The unique identifier for the person. | |
TodoListId | Long |
ToDoLists.Id | The unique identifier for the todolist. |
ProjectId | Long |
Projects.Id | Use filter to retrieve active people on the project with the given ID. |
Name | String | The name of the person. | |
Owner | Boolean | Boolean value to show if the current person is the account owner. | |
Admin | Boolean | Boolean value to show if the current person is an admin or not. | |
Title | String | The title of the person. | |
Bio | String | Bio description of the person. | |
CreatedAt | Datetime | The date and time when the record was created. | |
UpdatedAt | Datetime | The date and time when the record was last updated. | |
EmailAddress | String | The email address of the person. | |
AttachableSgid | String | The attachable Set Group ID. | |
PersonableType | String | Type of the person. | |
TimeZone | String | Human readable timezone for the user. | |
CompanyId | Long | Id of users company. | |
CompanyName | String | Name of users company. |
Retrieve calendars on Basecamp 3.
There is only one Calendar (Schedule) in each Basecamp project.
Retrieve more detail on a specific Calendar (ProjectId and Id are the only columns supported as search criteria by Basecamp).If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM Calendars WHERE ProjectId = '111111111' AND Id = '123456789'
Name | Type | References | Description |
Id [KEY] | Long |
Projects.CalendarId | The unique identifier of the calendar. |
ProjectId | Long |
Projects.Id | The Project Id associated with the calendar. |
Status | String | The status of the calendar. | |
Type | String | The type of the returned record. | |
CreatedAt | Datetime | The date and time when the calendar was created. | |
UpdatedAt | Datetime | The date and time when the calendar was last updated. | |
Title | String | Title of the calendar. | |
EntriesCount | Integer | Number of calendar events. | |
BucketId | Long | Id of the containing bucket. | |
BucketName | String | Name of the containing bucket. | |
BucketType | String | Type of the containing bucket. | |
CreatorId | Long |
People.Id | The Id of the creator. |
CreatorName | String | The name of the creator. |
Retrieve activity Events on Basecamp 3.
An event is created any time a recording changes.
You can retrieve all activity Events in the specified project and recording.The columns supported as search criteria by Basecamp are ProjectId and RecordingId.
If ProjectId is not specified in the query, the default ProjectId will be used.
SELECT * FROM Events WHERE ProjectId = '1111111' AND RecordingId = '22222222'
Name | Type | References | Description |
Id [KEY] | Long | The unique identifier of the event. | |
ProjectId | Long |
Projects.Id | The Id of the Project associated with the document. |
RecordingId | Long |
Recordings.Id | The Id of the Recording associated with this event. |
Action | String | The action description for the event. | |
Details | String | Details on the event. | |
CreatedAt | Datetime | The date and time when the event was created. | |
CreatorId | Long |
People.Id | Event creator Id. |
CreatorAttachableSgid | String | Event creator Attachable SGID. | |
CreatorName | String | Event creator Name. | |
CreatorEmailAddress | String | Event creator Email Address. | |
CreatorTitle | String | Event creator Title. | |
CreatorBio | String | Event creator Bio. | |
CreatorCreatedAt | Datetime | Event creator creation date and time. | |
CreatorUpdatedAt | Datetime | Event creator update date and time. | |
CreatorAdmin | Boolean | Boolean indicationg if the event creator is an admin. | |
CreatorOwner | Boolean | Boolean indicationg if the event creator is an owner. | |
CreatorTimeZone | String | Event creator's timezone. | |
CreatorCompanyId | Long | Event creator's company Id. | |
CreatorCompanyName | String | Event creator's company name. |
Retrieve People on Basecamp 3.
Retrieve all People visible to the current user, list people by Project, or specify an Id to get more information.Id and ProjectId are the columns supported by Basecamp as search criteria.
SELECT * FROM People SELECT * FROM People WHERE Id = '123456789' SELECT * FROM People WHERE ProjectId = '5168618'
Name | Type | References | Description |
Id [KEY] | Long | The unique identifier for the person. | |
Name | String | The name of the person. | |
Owner | Boolean | Boolean value to show if the current person is the account owner. | |
Admin | Boolean | Boolean value to show if the current person is an admin or not. | |
Title | String | The title of the person. | |
Bio | String | Bio description of the person. | |
CreatedAt | Datetime | The date and time when the record was created. | |
UpdatedAt | Datetime | The date and time when the record was last updated. | |
EmailAddress | String | The email address of the person. | |
AttachableSgid | String | The attachable Set Group ID. | |
PersonableType | String | Type of the person. | |
TimeZone | String | Human readable timezone for the user. | |
CompanyId | Long | Id of users company. | |
CompanyName | String | Name of users company. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
ProjectId | Long | Use filter to retrieve active people on the project with the given ID. |
Retrieve project tools on Basecamp 3.
No filters are supported server side for this table. All criteria will be handled client side within the Sync App.
For example, the following queries are processed server side:
SELECT * FROM ProjectTools
Name | Type | References | Description |
Id | Long | The id of the tool associated with the project. | |
Name | String | The name of the tool associated with the project. | |
AppUrl | String | The app url of the tool associated with this project. | |
Enabled | Boolean | Boolean value for a tool of the project. | |
Position | Int | The postion of the tool associated with this project. | |
Title | String | The title of the tool associated with this project. | |
Url | String | The url of the tool associated with this project. | |
ProjectId | Long | The unique identifier of the project. |
Retrieve recordings on Basecamp 3 folders.
Retrieve most of the data structures in the Basecamp 3, which are represented as "Recordings."
The columns supported as search criteria by Basecamp are Type (required parameter), Bucket, and Status.
SELECT * FROM Recordings WHERE type = 'Upload' AND Bucket = '1111111, 22222222' AND Status = 'active'
Name | Type | References | Description |
Id [KEY] | Long | The unique identifier of the topic. | |
Status | String | The status of the vault.
使用できる値は次のとおりです。active, archived, trashed | |
Type | String | The type of the vault.
使用できる値は次のとおりです。Comment, Document, Message, Question::Answer, Schedule::Entry, Todo, Todolist, Upload | |
CreatedAt | Datetime | The date and time when the event was created. | |
UpdatedAt | Datetime | The date and time when the event was last modified. | |
CreatorId | Long |
People.Id | Event Creator. |
CreatorName | String | Event Creator. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
Name | Type | Description | |
Bucket | String | Single or comma separated list of project IDs. Default: All active projects visible to the current user |
Retrieve Uploads on Basecamp 3.
Name | Type | References | Description |
Id [KEY] | Long | The unique identifier for the file uploaded. | |
ProjectId | Long |
Projects.Id | The Id of the Project associated with the file uploaded. |
VaultId | Long |
Vaults.Id | The Vault Id associated with the file uploaded. |
Status | String | The status of the vault. | |
Title | String | The title of the file uploaded. | |
ContentType | String | The content type of the file uploaded | |
Type | String | The type of the returned record. | |
CreatedAt | Datetime | The date and time when the file uploaded was created. | |
UpdatedAt | Datetime | The date and time when the file uploaded was last updated. | |
ParentTitle | String | Title of the parent. | |
ParentType | String | Type of the parent. | |
BucketName | String | Name of the containing bucket. | |
BucketType | String | Type of the containing bucket. | |
CreatorId | Long |
People.Id | The Id of the creator. |
CreatorName | String | The name of the creator. | |
CommentsCount | Integer | Number of comments the file uploaded has. | |
DownloadURL | String | Number of comments the file uploaded has. | |
ByteSize | Integer | Number of comments the file uploaded has. |
プロパティ | 説明 |
AuthScheme | The type of authentication to use when connecting to Basecamp. |
Schema | 接続するBasecamp のバージョンを指定します。 |
User | 現在の認証ユーザーのユーザー名。 |
Password | 現在の認証ユーザーのパスワード。 |
AccountId | 現在の認証ユーザーのAccount Id。 |
ProjectId | 現在の認証ユーザーのProject Id。 |
プロパティ | 説明 |
OAuthClientId | OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。 |
OAuthClientSecret | OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。 |
プロパティ | 説明 |
SSLServerCert | TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。 |
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
プロパティ | 説明 |
LogModules | ログファイルに含めるコアモジュール。 |
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
プロパティ | 説明 |
MaxRows | クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。 |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
The type of authentication to use when connecting to Basecamp.
接続するBasecamp のバージョンを指定します。
使用可能なスキーマは、V2(Basecamp 2 API を使用する場合)およびV3(Basecamp 3 API を使用する場合)です。
現在の認証ユーザーのユーザー名。
現在の認証ユーザーのユーザー名。このプロパティは、コマンドの実行に必須です。
現在の認証ユーザーのパスワード。
現在の認証ユーザーのパスワード。このプロパティは、コマンドの実行に必須です。
現在の認証ユーザーのAccount Id。
現在の認証ユーザーのAccount Id。このプロパティは、コマンドの実行に必須です。
現在の認証ユーザーのProject Id。
現在の認証ユーザーのProject Id。デフォルトでは、プロジェクトリストの最初のProject Id に設定されます。
このセクションでは、本プロバイダーの接続文字列で設定可能なOAuth プロパティの全リストを提供します。
プロパティ | 説明 |
OAuthClientId | OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。 |
OAuthClientSecret | OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。 |
OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。
OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId 値、およびクライアントシークレットOAuthClientSecret が提供されます。
OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。
OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId が提供されます。また、コンシューマーシークレットと呼ばれるクライアントシークレットも提供されます。クライアントシークレットをOAuthClientSecret プロパティに設定します。
このセクションでは、本プロバイダーの接続文字列で設定可能なSSL プロパティの全リストを提供します。
プロパティ | 説明 |
SSLServerCert | TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。 |
TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。
TLS/SSL 接続を使用する場合は、このプロパティを使用して、サーバーが受け入れるTLS/SSL 証明書を指定できます。コンピュータによって信頼されていない他の証明書はすべて拒否されます。
このプロパティは、次のフォームを取ります:
説明 | 例 |
フルPEM 証明書(例では省略されています) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
証明書を保有するローカルファイルへのパス。 | C:\cert.cer |
公開鍵(例では省略されています) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
MD5 Thumbprint (hex 値はスペースおよびコロン区切り) | ecadbdda5a1529c58a1e9e09828d70e4 |
SHA1 Thumbprint (hex 値はスペースおよびコロン区切り) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
これを指定しない場合は、マシンが信用するすべての証明書が受け入れられます。
すべての証明書の受け入れを示すには、'*'を使用します。セキュリティ上の理由から、これはお勧めできません。
このセクションでは、本プロバイダーの接続文字列で設定可能なFirewall プロパティの全リストを提供します。
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロキシベースのファイアウォールで使われるプロトコル。
このプロパティは、Sync App がFirewallServer プロキシ経由でトンネルトラフィックを使うためのプロトコルを指定します。デフォルトでは、Sync App はシステムプロキシに接続します。この動作を無効化し次のプロキシタイプのどれかで接続するには、ProxyAutoDetect をfalse に設定します。
タイプ | デフォルトポート | 説明 |
TUNNEL | 80 | これが設定されている場合、Sync App はBasecamp への接続を開き、プロキシを経由して通信が行われます。 |
SOCKS4 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 4 プロキシ経由で送信し、接続リクエストが許容されるかどうかを決定します。 |
SOCKS5 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 5 プロキシ経由で送信します。プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。 |
HTTP プロキシへの接続には、ProxyServer およびProxyPort ポートを使ってください。HTTP プロキシへの認証には、ProxyAuthScheme、ProxyUser、およびProxyPassword を使ってください。
プロキシベースのファイアウォールの名前もしくはIP アドレス。
ファイアウォールトラバーサルを許容するために設定するIP アドレス、DNS 名、もしくはプロキシホスト名を指定するプロパティです。プロトコルはFirewallType で指定されます。このプロパティとFirewallServer を使って、SOCKS 経由での接続、もしくはトンネリングが可能です。HTTP プロキシへの接続には、ProxyServer を使用します。
Sync App はデフォルトでシステムプロキシを使うので注意してください。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定してください。
プロキシベースのファイアウォールのTCP ポート。
ファイアウォールトラバーサルを許容するために設定するプロキシベースのファイアウォールのTCP ポート。名前もしくはIP アドレスを指定するには、FirewallServer を使います。FirewallType でプロトコルを指定します。
プロキシベースのファイアウォールに認証するために使うユーザー名。
FirewallUser およびFirewallPassword プロパティは、FirewallType により指定された認証方式に則り、FirewallServer、およびFirewallPort で指定されたプロキシに対しての認証に使われます。
プロキシベースのファイアウォールへの認証に使われるパスワード。
このプロパティは、FirewallType により指定された認証メソッドに則り、FirewallServer およびFirewallPort で指定されたプロキシに渡されます。
このセクションでは、本プロバイダーの接続文字列で設定可能なProxy プロパティの全リストを提供します。
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
HTTP プロキシへの接続には、ProxyServer を参照してください。SOCKS やトンネリングなどの他のプロキシには、FirewallType を参照してください。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。HTTP プロキシへの認証には、Sync App はHTTP、Windows(NTLM)、もしくはKerberos 認証タイプを使用することができます。
SOCKS プロキシを経由して接続する、もしくは接続をトンネルするには、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定します。
ProxyServer プロキシが起動しているTCP ポート。
HTTP トラフィックをリダイレクトするHTTP プロキシが実行されているポート。ProxyServer でHTTP プロキシを指定します。その他のプロキシタイプについては、FirewallType を参照してください。
ProxyServer プロキシへの認証で使われる認証タイプ。
この値は、ProxyServer およびProxyPort で指定されるHTTP プロキシに認証するために使われる認証タイプを指定します。
Sync App は、デフォルトでsystem proxy settings を使い、追加での設定が不要です。他のプロキシへの接続をする場合には、ProxyServer およびProxyPort に加え、ProxyAutoDetect をfalse に設定します。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
認証タイプは、次のどれかになります。
SOCKS 5 認証のような他の認証タイプを使用するには、FirewallType を参照してください。
ProxyServer プロキシへの認証に使われるユーザー名。
ProxyUser および ProxyPassword オプションは、ProxyServer で指定されたHTTP プロキシに対して接続および認証するために使用されます。
ProxyAuthScheme で使用可能な認証タイプを選択することができます。HTTP 認証を使う場合、これをHTTP プロキシで識別可能なユーザーのユーザー名に設定します。Windows もしくはKerberos 認証を使用する場合、このプロパティを次の形式のどれかでユーザー名に設定します。
user@domain domain\user
ProxyServer プロキシへの認証に使われるパスワード。
このプロパティは、NTLM(Windows)、Kerberos、もしくはHTTP 認証をサポートするHTTP プロキシサーバーに認証するために使われます。HTTP プロキシを指定するためには、ProxyServer およびProxyPort を設定します。認証タイプを指定するためにはProxyAuthScheme を設定します。
HTTP 認証を使う場合、さらにHTTP プロキシにProxyUser およびProxyPassword を設定します。
NTLM 認証を使う場合、Windows パスワードにProxyUser およびProxyPassword を設定します。Kerberos 認証には、これらを入力する必要があります。
SOCKS 5 認証もしくは、トンネリングは、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシに接続する場合には、これをfalse に設定します。
ProxyServer プロキシへの接続時に使用するSSL タイプ。
このプロパティは、ProxyServer で指定されたHTTP プロキシへの接続にSSL を使用するかどうかを決定します。この値は、AUTO、ALWAYS、NEVER、TUNNEL のいずれかです。有効な値は次のとおりです。
AUTO | デフォルト設定。URL がHTTPS URL の場合、Sync App は、TUNNEL オプションを使います。URL がHTTP URL の場合、コンポーネントはNEVER オプションを使います。 |
ALWAYS | 接続は、常にSSL 有効となります。 |
NEVER | 接続は、SSL 有効になりません。 |
TUNNEL | 接続は、トンネリングプロキシを経由します。プロキシサーバーがリモートホストへの接続を開き、プロキシを経由して通信が行われます。 |
ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。
ProxyServer は、このプロパティで定義されたアドレスを除くすべてのアドレスに使用されます。セミコロンを使用してエントリを区切ります。
Sync App は、追加設定なしにデフォルトでシステムのプロキシ設定を使います。この接続のプロキシ例外を明示的に構成するには、ProxyAutoDetect をfalse に設定して、ProxyServer およびProxyPort を設定する必要があります。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
ログファイルに含めるコアモジュール。
指定された(';' で区切られた)モジュールのみがログファイルに含まれます。デフォルトではすべてのモジュールが含まれます。
概要はログ ページを参照してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なSchema プロパティの全リストを提供します。
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。
Sync App のスキーマファイル(テーブルとビューの場合は.rsd ファイル、ストアドプロシージャの場合は.rsb ファイル)を含むディレクトリへのパス。このフォルダの場所は、実行ファイルの場所からの相対パスにすることができます。Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。
Note: このSync App は複数のスキーマをサポートするため、Basecamp カスタムスキーマファイルの構造は以下のようになります。
指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\Basecamp Data Provider\\Schema" となり、%APPDATA% はユーザーのコンフィギュレーションディレクトリに設定されます:
このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
スキーマをデータベースからリストすると、負荷がかかる可能性があります。接続文字列でスキーマのリストを提供すると、 パフォーマンスが向上します。
このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。
テーブルを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でテーブルのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。
ビューを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でビューのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なMiscellaneous プロパティの全リストを提供します。
プロパティ | 説明 |
MaxRows | クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。 |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
これらの隠しプロパティは特定のユースケースでのみ使用されます。
以下にリストされているプロパティは、特定のユースケースで使用可能です。通常のドライバーのユースケースおよび機能では、これらのプロパティは必要ありません。
複数のプロパティをセミコロン区切りリストで指定します。
DefaultColumnSize | データソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。 |
ConvertDateTimeToGMT | 日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。 |
RecordToFile=filename | 基底のソケットデータ転送を指定のファイルに記録します。 |
このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。
Entity Framework ではテーブルカラムでない疑似カラムに値を設定できないため、この設定はEntity Framework で特に便利です。この接続設定の値は、"Table1=Column1, Table1=Column2, Table2=Column3" の形式です。"*=*" のように"*" 文字を使用して、すべてのテーブルとすべてのカラムを含めることができます。
タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。
Timeout が0に設定されている場合は、操作がタイムアウトしません。処理が正常に完了するか、エラー状態になるまで実行されます。
Timeout の有効期限が切れても処理が完了していない場合は、Sync App は例外をスローします。
カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。
ユーザー定義ビューは、UserDefinedViews.json というJSON 形式のコンフィギュレーションファイルで定義されています。Sync App は、このファイルで指定されたビューを自動的に検出します。
また、複数のビュー定義を持ち、UserDefinedViews 接続プロパティを使用して制御することも可能です。このプロパティを使用すると、指定されたビューのみがSync App によって検知されます。
このユーザー定義ビューのコンフィギュレーションファイルは、次のようにフォーマットされています。
次に例を示します。
{ "MyView": { "query": "SELECT * FROM Projects WHERE MyColumn = 'value'" }, "MyView2": { "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)" } }UserDefinedViews 接続プロパティを使用して、JSON コンフィギュレーションファイルの場所を指定します。次に例を示します。
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"