API Referenceproject-api

DyLy Project API

DyLy Project API

Version
v1
Server
https://dyly-api.lilacwells.dev/api/v1

projects

delete/projects/{project_id}

delete project

#delete-projects

Permanently deletes a project and all associated resources including domains, API keys, and short links. This operation cannot be undone.

Behavior

  • All custom domains associated with the project are removed
  • All API keys (primary and secondary) are revoked
  • All short links created under this project are deleted
  • The operation is idempotent - calling delete on an already deleted project returns 404

Rate limiting

  • Subject to rate limiting based on the user's plan

Parameters

project_idpathrequired

The unique identifier (UUID v4) of the project to delete. Must be a valid UUID format.

string / uuid

Authorizationheaderrequired

HTTP Basic authentication header. Format: Authorization: Basic base64(clientId:clientSecret) where clientId and clientSecret are the API credentials that have permission to delete the project.

string

Responses

204

Project successfully deleted. No content returned.

400application/json

Invalid request. The project_id parameter does not match the required UUID format or other validation failed.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

401application/json

Unauthorized. The Authorization header is missing, malformed, or contains invalid credentials.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

403application/json

Forbidden. The authenticated client does not have permission to delete this project.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

404application/json

Project not found. The specified project_id does not exist or has already been deleted.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

429application/json

Too many requests. Rate limit exceeded for the current user or project.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

500application/json

Internal server error. An unexpected error occurred while processing the request.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

get/projects/{project_id}

get project

#get-project

Retrieves detailed information about a specific project including its configuration, domains, and plan details.

Response

  • Returns project metadata including projectId, name, registered domains, and active plan
  • Domain list includes the default subdomain and any custom domains

Rate limiting

  • Subject to rate limiting based on the user's plan

Parameters

project_idpathrequired

The unique identifier (UUID v4) of the project to retrieve. Must be a valid UUID format.

string / uuid

Authorizationheaderrequired

HTTP Basic authentication header. Format: Authorization: Basic base64(clientId:clientSecret) where clientId and clientSecret are the API credentials that have read permission for the project.

string

Responses

200application/json

Project details retrieved successfully.

object

  • projectIdstring / uuid

    The globally unique identifier (UUID v4) of the project. Used to reference this project in API operations.

  • namestring

    The display name of the project as set by the user.

  • domainsarray

    List of domains registered for this project. Includes the default subdomain (e.g., <subDomainString>.dyly.dev) and any custom domains that have been added and validated.

    array

    List of domains registered for this project. Includes the default subdomain (e.g., <subDomainString>.dyly.dev) and any custom domains that have been added and validated.

    Items

    string

  • planstring

    The subscription plan tier for this project. Determines available features, rate limits, and quotas. Possible values: Free, Standard.

  • fallbackUrlstring

    Optional fallback URL where users are redirected when a short link is not found, expired, or one-time link has already been used. Only present if configured.

400application/json

Invalid request. The project_id parameter does not match the required UUID format or other validation failed.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

401application/json

Unauthorized. The Authorization header is missing, malformed, or contains invalid credentials.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

403application/json

Forbidden. The authenticated client does not have permission to read this project or rate limit exceeded.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

404application/json

Project not found. The specified project_id does not exist.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

429application/json

Too many requests. Rate limit exceeded for the current user or project.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

500application/json

Internal server error. An unexpected error occurred while processing the request.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

put/projects/{project_id}

update project

#update-project

Updates the configuration of an existing project. Allows modification of project name and fallback URL settings.

Updatable fields

  • name: The display name of the project
  • fallbackUrl: Optional URL to redirect users when a short link is not found or expired

Validation

  • Project name must follow the naming pattern (start with letter, alphanumeric with spaces/hyphens/underscores, 1-32 characters)
  • Fallback URL must be a valid absolute HTTP(S) URL if provided
  • Empty request body is accepted (no fields will be updated)

Rate limiting

  • Subject to rate limiting based on the user's plan

Parameters

project_idpathrequired

The unique identifier (UUID v4) of the project to update. Must be a valid UUID format.

string / uuid

Authorizationheaderrequired

HTTP Basic authentication header. Format: Authorization: Basic base64(clientId:clientSecret) where clientId and clientSecret are the API credentials that have update permission for the project.

string

Request body

Optional · application/json

object

  • namestring

    The display name of the project. Must start with a letter, followed by letters, digits, spaces, hyphens, or underscores, and end with a letter or digit. Length: 1-32 characters.

  • fallbackUrlstring

    Optional fallback URL where users are redirected when a short link is not found, expired, or one-time link has already been used. Must be a valid absolute HTTP or HTTPS URL.

Responses

200application/json

Project updated successfully. Returns the updated project details.

object

  • projectIdstring / uuid

    The globally unique identifier (UUID v4) of the project. Used to reference this project in API operations.

  • namestring

    The display name of the project as set by the user.

  • domainsarray

    List of domains registered for this project. Includes the default subdomain (e.g., <subDomainString>.dyly.dev) and any custom domains that have been added and validated.

    array

    List of domains registered for this project. Includes the default subdomain (e.g., <subDomainString>.dyly.dev) and any custom domains that have been added and validated.

    Items

    string

  • planstring

    The subscription plan tier for this project. Determines available features, rate limits, and quotas. Possible values: Free, Standard.

  • fallbackUrlstring

    Optional fallback URL where users are redirected when a short link is not found, expired, or one-time link has already been used. Only present if configured.

400application/json

Invalid request. The project_id parameter or request body does not meet validation requirements.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

401application/json

Unauthorized. The Authorization header is missing, malformed, or contains invalid credentials.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

403application/json

Forbidden. The authenticated client does not have permission to update this project or rate limit exceeded.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

404application/json

Project not found. The specified project_id does not exist.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

429application/json

Too many requests. Rate limit exceeded for the current user or project.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.

500application/json

Internal server error. An unexpected error occurred while processing the request.

object

  • errorCoderequiredstring

    A stable, machine-readable error code that identifies the specific type of error.

  • errorMessagerequiredstring

    A human-readable message that describes the error. This message may contain additional context about what went wrong.

  • correlationIdrequiredstring / uuid

    A unique identifier (UUID) for this request that can be used to trace the error in server logs. Include this ID when contacting support. This value matches the X-Correlation-Id response header.