# \HubPublishApi
All URIs are relative to */api*
[**get_hub_project_by_source**](HubPublishApi.md#get_hub_project_by_source) | **GET** /w/{workspace}/hub/project | get the hub project linked to a workspace folder
[**get_hub_project_export**](HubPublishApi.md#get_hub_project_export) | **GET** /w/{workspace}/hub/projects/{slug}/export | export a hub project
[**publish_hub_app**](HubPublishApi.md#publish_hub_app) | **POST** /w/{workspace}/hub/apps | publish an app to a hub project
[**publish_hub_draft**](HubPublishApi.md#publish_hub_draft) | **POST** /w/{workspace}/hub/publish_draft | create or update a hub project draft
[**publish_hub_flow**](HubPublishApi.md#publish_hub_flow) | **POST** /w/{workspace}/hub/flows | publish a flow to a hub project
[**publish_hub_flow_recording**](HubPublishApi.md#publish_hub_flow_recording) | **POST** /w/{workspace}/hub/flows/{flow_id}/recording | attach a recording to a hub flow
[**publish_hub_migrations**](HubPublishApi.md#publish_hub_migrations) | **POST** /w/{workspace}/hub/migrations | publish data table migrations to a hub project
[**publish_hub_pipeline_recording**](HubPublishApi.md#publish_hub_pipeline_recording) | **POST** /w/{workspace}/hub/projects/{slug}/pipeline_recording | attach a data-pipeline recording to a hub project
[**publish_hub_project_logo**](HubPublishApi.md#publish_hub_project_logo) | **POST** /w/{workspace}/hub/projects/{slug}/logo | set or clear a hub project's custom logo
[**publish_hub_raw_app**](HubPublishApi.md#publish_hub_raw_app) | **POST** /w/{workspace}/hub/raw_apps | publish a raw app to a hub project
[**publish_hub_raw_app_embed**](HubPublishApi.md#publish_hub_raw_app_embed) | **POST** /w/{workspace}/hub/raw_apps/{id}/embed | set or clear the embed url of a hub raw app
[**publish_hub_resource_type**](HubPublishApi.md#publish_hub_resource_type) | **POST** /w/{workspace}/hub/resource_types | publish a resource type to a hub project
[**publish_hub_resources**](HubPublishApi.md#publish_hub_resources) | **POST** /w/{workspace}/hub/resources | publish resource placeholders to a hub project
[**publish_hub_script**](HubPublishApi.md#publish_hub_script) | **POST** /w/{workspace}/hub/scripts | publish a script to a hub project
[**publish_hub_script_recording**](HubPublishApi.md#publish_hub_script_recording) | **POST** /w/{workspace}/hub/scripts/{ask_id}/recording | attach a recording to a hub script
[**publish_hub_triggers**](HubPublishApi.md#publish_hub_triggers) | **POST** /w/{workspace}/hub/triggers | publish triggers to a hub project
[**submit_hub_project**](HubPublishApi.md#submit_hub_project) | **POST** /w/{workspace}/hub/projects/{slug}/submit | submit a hub project draft for review
## get_hub_project_by_source
> String get_hub_project_by_source(workspace, folder)
get the hub project linked to a workspace folder
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## get_hub_project_export
> String get_hub_project_export(workspace, slug, folder)
export a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub and returns the Hub's status code and raw response body. The folder scope is only needed to re-export the caller's own draft; approved projects are public, so it is optional here.
### Parameters
**workspace** | **String** | | [required] |
**slug** | **String** | hub project slug (3-50 chars, lowercase alphanumeric and hyphens, no leading/trailing hyphen) | [required] |
**folder** | Option<**String**> | folder scoping the Hub project source (`{workspace}:{folder}`) | |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_app
> String publish_hub_app(workspace, folder, publish_app_body)
publish an app to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_app_body** | [**PublishAppBody**](PublishAppBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_draft
> String publish_hub_draft(workspace, folder, publish_draft_body)
create or update a hub project draft
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_draft_body** | [**PublishDraftBody**](PublishDraftBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_flow
> String publish_hub_flow(workspace, folder, publish_flow_body)
publish a flow to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_flow_body** | [**PublishFlowBody**](PublishFlowBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_flow_recording
> String publish_hub_flow_recording(workspace, flow_id, folder, recording_body)
attach a recording to a hub flow
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**flow_id** | **i64** | hub id of the flow | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**recording_body** | [**RecordingBody**](RecordingBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_migrations
> String publish_hub_migrations(workspace, folder, publish_migrations_body)
publish data table migrations to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_migrations_body** | [**PublishMigrationsBody**](PublishMigrationsBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_pipeline_recording
> String publish_hub_pipeline_recording(workspace, slug, folder, pipeline_recording_body)
attach a data-pipeline recording to a hub project
Requires the caller to be a workspace admin. A data-pipeline recording is scoped to the whole project (a folder cascade), not a single item. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**slug** | **String** | hub project slug | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**pipeline_recording_body** | [**PipelineRecordingBody**](PipelineRecordingBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_project_logo
> String publish_hub_project_logo(workspace, slug, folder, project_logo_body)
set or clear a hub project's custom logo
Requires the caller to be a workspace admin. Sets the project's custom logo (base64 png/svg, decoded size max 512KB) or clears it when `logo` is null; the `logo` field itself is required so an empty body cannot clear the logo by accident. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**slug** | **String** | hub project slug | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**project_logo_body** | [**ProjectLogoBody**](ProjectLogoBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_raw_app
> String publish_hub_raw_app(workspace, folder, publish_raw_app_body)
publish a raw app to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_raw_app_body** | [**PublishRawAppBody**](PublishRawAppBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_raw_app_embed
> String publish_hub_raw_app_embed(workspace, id, folder, raw_app_embed_body)
set or clear the embed url of a hub raw app
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**id** | **i64** | hub id of the raw app | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**raw_app_embed_body** | [**RawAppEmbedBody**](RawAppEmbedBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_resource_type
> String publish_hub_resource_type(workspace, folder, publish_resource_type_body)
publish a resource type to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_resource_type_body** | [**PublishResourceTypeBody**](PublishResourceTypeBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_resources
> String publish_hub_resources(workspace, folder, publish_resources_body)
publish resource placeholders to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_resources_body** | [**PublishResourcesBody**](PublishResourcesBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_script
> String publish_hub_script(workspace, folder, publish_script_body)
publish a script to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_script_body** | [**PublishScriptBody**](PublishScriptBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_script_recording
> String publish_hub_script_recording(workspace, ask_id, folder, recording_body)
attach a recording to a hub script
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**ask_id** | **i64** | hub ask id of the script | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**recording_body** | [**RecordingBody**](RecordingBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## publish_hub_triggers
> String publish_hub_triggers(workspace, folder, publish_triggers_body)
publish triggers to a hub project
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
**publish_triggers_body** | [**PublishTriggersBody**](PublishTriggersBody.md) | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## submit_hub_project
> String submit_hub_project(workspace, slug, folder)
submit a hub project draft for review
Requires the caller to be a workspace admin. Forwards the request to the configured Hub scoped to the `{workspace}:{folder}` source and returns the Hub's status code and raw response body.
### Parameters
**workspace** | **String** | | [required] |
**slug** | **String** | hub project slug (3-50 chars, lowercase alphanumeric and hyphens, no leading/trailing hyphen) | [required] |
**folder** | **String** | workspace folder scoping the Hub publication: a workspace can publish one Hub project per folder and the Hub-side source key is `{workspace}:{folder}` | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)