# Creating a new Workspace Resource

Adds a named or unnamed resource to a project (workspace).

Bulk Create

This endpoint supports bulk creating up to 200 objects. In the request body, set the top-level key to its plural form and place the objects in an array. Example:


{
  "workspace_resources": [
    {
      "workspace_id": 123,
      "user_id": 111,
      "role_id": 555
    },
    {
      "workspace_id": 123,
      "user_id": 222,
      "role_id": 666
    }
  ]
}



This endpoint returns structured Workspace Resource objects.
As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array
and will be indexed by ID in the workspace_resources top-level JSON key.
Please see our Response Format section for more information.

Endpoint: POST /workspace_resources
Version: 1.0.0

## Query parameters:

  - `include` (string)
    Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.
- custom_field_values (CustomFieldValue) - Retrieves the custom field values for the resource. The response will include custom_field_value_ids, which references the data in the custom_field_values top-level key.
- external_references (ExternalReference) - Includes references to external integrations for this object.
- organization_membership (OrganizationMembership) - Retrieves the organization memberships for the resource. The response will include organization_membership_id, which references the data in the organization_memberships top-level key.
- participation (Participation) - Retrieves the participation associated with the resource. The response will include participation_id, which references the data in the participations top-level key.
- role (Role) - Retrieves the role for this resource. The response will include role_id, which references the data in the roles top-level key.
- user (User) - Retrieves the user associated with the resource. The response will include user_id, which references the data in the users top-level key. For unnamed resources, the user_id will be null.
- workspace (Workspace) - Retrieves the workspace (project) the resource is in. The response will include workspace_id, which references the data in the workspaces top-level key.

  - `optional_fields` (array)
    Allows you to request one or more optional fields as an array.
    Enum: "resource_bill_rate", "resource_cost_rate"

## Request fields (application/json):

  - `workspace_resource` (object)

  - `workspace_resource.workspace_id` (integer, required)
    The workspace ID associated with this resource.

  - `workspace_resource.user_id` (integer)
    The user ID associated with this resource. A null value indicates that this is an unnamed resource.

  - `workspace_resource.role_id` (integer)
    The role ID associated with this resource. The role ID is a required attribute to create unnamed
resources. This defaults to the user's primary project role if the user is specified.

  - `workspace_resource.external_reference` (object)
    Typically populated programmatically by a third party system via an integration, this is an optional
object that holds data from an external system. It connects objects in an external system with objects in
Kantata OX (for example, to connect a Jira issue to a Kantata OX Project).

  - `workspace_resource.external_reference.service_name` (string, required)
    The provider name of the integration. If you are adding multiple external references to the same object, the service_name must be unique.

  - `workspace_resource.external_reference.service_model` (string, required)
    The object type of the external object this external reference belongs to.

  - `workspace_resource.external_reference.service_model_ref` (string, required)
    The object ID of the external object this external reference belongs to.

  - `workspace_resource.external_reference.status` (string)
    The status of the integration. Options are successful, pending,  or failed.

  - `workspace_resource.external_reference.external_message` (string)
    The message on the external object.

  - `workspace_resource.external_reference.external_link` (string)
    The link to the external object.

  - `workspace_resource.external_reference.external_status` (string)
    The status of the external object in the external system.

  - `workspace_resource.external_reference.locked` (boolean)
    Whether the subject is locked.

## Response 200 fields (application/json):

  - `count` (integer)

  - `meta` (object)

  - `meta.count` (integer)

  - `meta.page_count` (integer)

  - `meta.page_number` (integer)

  - `meta.page_size` (integer)

  - `results` (array)

  - `results.key` (string)

  - `results.id` (string)

  - `workspace_resources` (object)

  - `external_references` (object)

  - `users` (object)

  - `roles` (object)

  - `organization_memberships` (object)

  - `participations` (object)

  - `workspaces` (object)

  - `custom_field_values` (object)

## Response 400 fields (application/json):

  - `errors` (array)

  - `errors.type` (string)

  - `errors.message` (string)


