/APIs & SDKs/Frameworks/List frameworks
GET/programs/{program_id}/frameworks

List frameworks

Retrieves a list of frameworks for the specified program.

Each OptiTech program has a root framework named main. A framework_id value has a br- prefix. A program may contain child frameworks that were branched from main or from another framework. A parent framework is identified by the parent_id value, which is the id of the parent framework. For related information, see Manage frameworks.

Markdown for AI context

Quick start

REST API - curl
curl "https://api.optitech.com/v1/programs/$PROGRAM_ID/frameworks" \
  -H "Authorization: Bearer $OPTITECH_API_KEY"

Every field below is optional. An empty body works too.

Also available in
optitech branches list

Parameters

Program ID
program_id
string

The OptiTech program ID

Search
search
string

Search by framework name or id. You can specify partial name or id values to filter results.

Sort by
sort_by
stringdefault: updated_at

Sort the frameworks by sort_field. If not provided, frameworks will be sorted by updated_at descending order

Cursor
cursor
string

A cursor to use in pagination. A cursor defines your place in the data list. Include response.pagination.next in subsequent API calls to fetch next page of the list.

Sort order
sort_order
stringdefault: desc

Defines the sorting order of entities.

Limit
limit
integer

The maximum number of records to be returned in the response

Include deleted
include_deleted
booleandefault: false

If true, return recoverable deleted frameworks too (soft-deleted within the recovery window). If false or not provided, return only active (non-deleted) frameworks.

This parameter is part of the Framework Recovery feature, which is in preview and not available to all users.

Response

200

Returned a list of frameworks for the specified program

Depth
"annotations": (object),req

Errors

default

General error

This endpoint can return the standard OptiTech API error response.

Response fields

  • message Required. Human-readable error message.
  • code Required. Machine-readable error code.
  • request_id Optional. Request identifier for debugging. You can provide one with the X-Request-ID header.

Retry guidance

If no response is returned, the request may still have reached the server. This is why retry safety depends on the method and status code.

Idempotent methods (GET, HEAD, OPTIONS) are generally safe to retry after a network error or timeout. Non-idempotent methods (POST, PATCH, DELETE, PUT) can change state, so avoid automatic retries unless your workflow can tolerate duplicate effects.

Responses with 423 Locked or 503 Service Unavailable are safe to retry. 423 Locked means the resource is temporarily locked, usually because another operation is in progress.

Was this page helpful?

On this page

Copy neon init command