Goals

The goals resource is used to manage member goals.

Goal object

{
  "id": "019a3138-cfc0-79d8-ab6c-7cb28be467b6",
  "tenant": "01988bb8-1cfb-7c87-9326-93op0349288e",
  "member": "0199c464-8e16-7603-8e7d-brhze8y3owto",
  "goal_identifier": null,
  "title": "Secure weekend part-time employment ",
  "description": "Steve would like to secure a part time employment to work weekends only. He will plan a time to meet with Martha, the Director of Employment Services to work on this goal. His second step is to complete a resume. He would prefer a culinary job.",
  "status": "in_progress",
  "category": "01988bb8-2068-7e35-97c9-d098f9462cf5",
  "percent_complete": 0,
  "date_start": "2025-10-29",
  "date_due": null,
  "date_completed": null,
  "meta": null,
  "archived_at": null,
  "created_at": "2025-10-29 18:26:38",
  "updated_at": null
}

Fields

  • id
    required readonly string
    Unique ID of the record.
  • tenant
    required readonly string
    Unique ID of the tenant.
  • member
    required string
    Unique ID of the member.
  • goal_identifier
    nullable string
    Unique identifier for the goal within the tenant.
  • title
    required string
    Title of the goal.
  • description
    nullable string
    Description of the goal.
  • status
    required string
    Status of the goal. One of:
    • discontinued
    • on_hold
    • not_started
    • in_progress
    • pending_review
    • completed
  • category
    nullable string
    Unique ID of the category.
  • percent_complete
    integer
    Percentage of the goal completed. Must be between 0 and 100. Default value is 0.
  • date_start
    required string
    UTC timestamp of when the goal started.
  • date_due
    nullable string
    UTC timestamp of when the goal is due. Value must be after date_start.
  • date_completed
    nullable string
    UTC timestamp of when the goal was completed. Value must be after date_start.
  • meta
    nullable object
    Additional metadata about the goal.
  • archived_at
    nullable string
    UTC timestamp of when the record was archived.
  • created_at
    required readonly string
    UTC timestamp of when the record was created.
  • updated_at
    nullable readonly string
    UTC timestamp of when the record was last updated.

Create a goal

POST /tenants/{tenantId}/goals

The request body must include a goal object.

Required permissions

goals:create members:read options:read

Response

HTTP status Title Description Schema
201 Created Successfully created Goal object
400 Bad Request Invalid or missing field(s) Error object
404 Not Found Tenant not found Error object
409 Conflict Goal identifier already exists for tenant Error object

List goals

GET /tenants/{tenantId}/goals

Required permissions

goals:read members:read options:read

Response

HTTP status Title Description Schema
200 OK An associative array of goal objects
400 Bad Request Invalid parameters in the request query Error object
404 Not Found Tenant not found Error object

Read a goal

GET /tenants/{tenantId}/goals/{id}

Required permissions

goals:read members:read options:read

Response

HTTP status Title Description Schema
200 OK Goal object
400 Bad Request Invalid parameters in the request query Error object
404 Not Found Tenant or goal ID not found Error object

Update a goal

PATCH /tenants/{tenantId}/goals/{id}

The request body must include parts of a goal object.

Required permissions

goals:update members:read options:read

Response

HTTP status Title Description Schema
200 OK Updated goal record Goal object
400 Bad Request Invalid or missing field(s) Error object
404 Not Found Tenant or goal ID not found Error object
409 Conflict Goal identifier already exists for tenant Error object

Delete a goal

DELETE /tenants/{tenantId}/goals/{id}

Required permissions

goals:delete

Response

HTTP status Title Description Schema
204 No content Successfully deleted
404 Not Found Tenant ID not found Error object
Was this page helpful?
© 2026 Bloom Data · System status