swagger: "2.0"
host: opentrials.local
basePath: /v1
info:
  title: OpenTrials API
  version: 0.0.1
  x-apisguru-categories:
    - open_data
  x-logo:
    backgroundColor: "#FFFFFF"
    url: https://avatars1.githubusercontent.com/u/13900836?s=200&v=4
  x-origin:
    - format: swagger
      url: https://raw.githubusercontent.com/opentrials/api/master/api/swagger/swagger.yaml
      version: "2.0"
  x-providerName: opentrials.local
consumes:
  - application/json
produces:
  - application/json
paths:
  "/conditions/{id}":
    get:
      description: Returns condition details
      operationId: getCondition
      parameters:
        - description: ID of the condition
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Condition"
        "404":
          description: Condition not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - conditions
    x-swagger-router-controller: conditions
  /document_categories:
    get:
      description: Returns document categories
      operationId: listDocumentCategories
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DocumentCategoryList"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - document_categories
    x-swagger-router-controller: document_categories
  /documents:
    get:
      description: Returns documents
      operationId: listDocuments
      parameters:
        - default: 1
          description: The page number
          in: query
          minimum: 1
          name: page
          type: integer
        - default: 20
          description: Number of items per page
          in: query
          maximum: 100
          minimum: 10
          name: per_page
          type: integer
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DocumentList"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - documents
    x-swagger-router-controller: documents
  "/documents/{id}":
    get:
      description: Returns details of a document
      operationId: getDocument
      parameters:
        - description: ID of the document
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Document"
        "404":
          description: Document not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - documents
    x-swagger-router-controller: documents
  /fda_applications:
    get:
      description: Returns FDA applications
      operationId: listFDAApplications
      parameters:
        - default: 1
          description: The page number
          in: query
          minimum: 1
          name: page
          type: integer
        - default: 20
          description: Number of items per page
          in: query
          maximum: 100
          minimum: 10
          name: per_page
          type: integer
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FDAApplicationList"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - fda_applications
    x-swagger-router-controller: fda_applications
  "/fda_applications/{id}":
    get:
      description: Returns an FDA application details
      operationId: getFDAApplication
      parameters:
        - description: ID of the FDA application
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FDAApplication"
        "404":
          description: FDA application not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - fda_applications
    x-swagger-router-controller: fda_applications
  "/interventions/{id}":
    get:
      description: Returns intervention details
      operationId: getIntervention
      parameters:
        - description: ID of the intervention
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Intervention"
        "404":
          description: Intervention not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - interventions
    x-swagger-router-controller: interventions
  "/organisations/{id}":
    get:
      description: Returns organisation details
      operationId: getOrganisation
      parameters:
        - description: ID of the organisation
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Organisation"
        "404":
          description: Organisation not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - organisations
    x-swagger-router-controller: organisations
  "/persons/{id}":
    get:
      description: Returns person details
      operationId: getPerson
      parameters:
        - description: ID of the person
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Person"
        "404":
          description: Person not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - persons
    x-swagger-router-controller: persons
  "/publications/{id}":
    get:
      description: Returns publication details
      operationId: getPublication
      parameters:
        - description: ID of the publication
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Publication"
        "404":
          description: Publication not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - publications
    x-swagger-router-controller: publications
  /search:
    get:
      description: |-
        Returns trials based on a search query. By default, it'll search in all of a trial's attributes.
        - `q` is a [ElasticSearch query string](https://www.elastic.co/guide/en/elasticsearch/reference/2.3/query-dsl-query-string-query.html#query-string-syntax) (e.g. `public_title:(depressive OR depression)`)
        - `page` can take a value between `1` and `100`
        - `per_page` can take a value between `10` and `100`
      operationId: searchTrials
      parameters:
        - description: The search query (follows the [ElasticSearch Query String](https://www.elastic.co/guide/en/elasticsearch/reference/2.3/query-dsl-query-string-query.html#query-string-syntax) syntax)
          in: query
          name: q
          type: string
        - default: 1
          description: The page number
          in: query
          maximum: 100
          minimum: 1
          name: page
          type: integer
        - default: 20
          description: Number of items per page
          in: query
          maximum: 100
          minimum: 10
          name: per_page
          type: integer
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/TrialSearchResults"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - trials
    x-swagger-router-controller: search
  "/search/autocomplete/{in}":
    get:
      description: Autocomplete search feature for supported database entities (`location`). It has the same options as a regular `search` operation, with an extra **required** `in` parameter indicating the entity type to search.
      operationId: autocomplete
      parameters:
        - description: The entity to search for
          enum:
            - location
          in: path
          name: in
          required: true
          type: string
        - description: The search query
          in: query
          name: q
          type: string
        - default: 1
          description: The page number
          in: query
          maximum: 100
          minimum: 1
          name: page
          type: integer
        - default: 20
          description: Number of items per page
          in: query
          maximum: 100
          minimum: 10
          name: per_page
          type: integer
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AutocompleteResults"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - search
    x-swagger-router-controller: search
  /search/fda_documents:
    get:
      description: Search the FDA documents
      operationId: searchFDADocuments
      parameters:
        - description: The search query (follows the [ElasticSearch Query String](https://www.elastic.co/guide/en/elasticsearch/reference/2.3/query-dsl-query-string-query.html#query-string-syntax) syntax)
          in: query
          name: q
          type: string
        - description: Search query on the documents file's text (follows the [ElasticSearch Simple Query String](https://www.elastic.co/guide/en/elasticsearch/reference/2.3/query-dsl-simple-query-string-query.html#_simple_query_string_syntax) syntax)
          in: query
          name: text
          type: string
        - default: 1
          description: The page number
          in: query
          maximum: 100
          minimum: 1
          name: page
          type: integer
        - default: 20
          description: Number of items per page
          in: query
          maximum: 100
          minimum: 10
          name: per_page
          type: integer
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/FDADocumentSearchResults"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - search
    x-swagger-router-controller: search
  /sources:
    get:
      description: Returns list of sources
      operationId: list
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/SourceList"
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - sources
    x-swagger-router-controller: sources
  /swagger.yaml:
    x-swagger-pipe: swagger_raw
  "/trials/{id}":
    get:
      description: Returns a trial's details and related entities (e.g. `conditions`).
      operationId: getTrial
      parameters:
        - description: ID of the trial
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Trial"
        "404":
          description: Trial not found
        default:
          description: Error
          schema:
            $ref: "#/definitions/ErrorResponse"
      tags:
        - trials
    x-swagger-router-controller: trials
  "/trials/{id}/records":
    get:
      description: Returns a trial's raw records from its sources
      operationId: getRecords
      parameters:
        - description: ID of the trial
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/RecordList"
        "404":
          description: Trial not found
      tags:
        - trials
    x-swagger-router-controller: trials
  "/trials/{trialId}/records/{id}":
    get:
      description: Returns a trial's raw record from its sources
      operationId: getRecord
      parameters:
        - description: ID of the trial
          in: path
          name: trialId
          required: true
          type: string
        - description: ID of the trial's record
          in: path
          name: id
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/Record"
        "404":
          description: Trial not found
      tags:
        - trials
    x-swagger-router-controller: trials
definitions:
  AutocompleteResult:
    properties:
      id:
        type: string
      name:
        type: string
    required:
      - id
      - name
    type: object
  AutocompleteResults:
    properties:
      items:
        items:
          $ref: "#/definitions/AutocompleteResult"
        type: array
      total_count:
        type: integer
    required:
      - total_count
      - items
    type: object
  Condition:
    properties:
      id:
        description: ID of the condition
        type: string
      name:
        description: Name of the condition
        type: string
      url:
        description: OpenTrials API URL of the condition
        type: string
    required:
      - id
      - name
      - url
    type: object
  Discrepancies:
    description: Object listing the Trial's discrepant fields
    properties:
      gender:
        items:
          $ref: "#/definitions/DiscrepantFieldString"
        type: array
      has_published_results:
        items:
          $ref: "#/definitions/DiscrepantFieldBoolean"
        type: array
      recruitment_status:
        items:
          $ref: "#/definitions/DiscrepantFieldString"
        type: array
      status:
        items:
          $ref: "#/definitions/DiscrepantFieldString"
        type: array
      target_sample_size:
        items:
          $ref: "#/definitions/DiscrepantFieldInteger"
        type: array
    type: object
  DiscrepancyFieldBase:
    properties:
      record_id:
        type: string
      source_name:
        type: string
    required:
      - record_id
      - source_name
    type: object
  DiscrepantFieldBoolean:
    allOf:
      - $ref: "#/definitions/DiscrepancyFieldBase"
      - properties:
          value:
            type: boolean
        type: object
    type: object
  DiscrepantFieldInteger:
    allOf:
      - $ref: "#/definitions/DiscrepancyFieldBase"
      - properties:
          value:
            type: integer
        type: object
    type: object
  DiscrepantFieldString:
    allOf:
      - $ref: "#/definitions/DiscrepancyFieldBase"
      - properties:
          value:
            type: string
        type: object
    type: object
  Document:
    properties:
      document_category:
        $ref: "#/definitions/DocumentCategory"
        type: object
      fda_application:
        $ref: "#/definitions/FDAApplication"
      file:
        $ref: "#/definitions/File"
        type: object
      id:
        description: ID of the document
        type: string
      name:
        type: string
      source:
        $ref: "#/definitions/Source"
        type: object
      source_url:
        description: URL of origin for this document
        type: string
      trials:
        items:
          $ref: "#/definitions/TrialSummary"
        type: array
      url:
        description: OpenTrials API URL of the document
        type: string
    required:
      - id
      - name
      - url
      - document_category
    type: object
  DocumentCategory:
    properties:
      group:
        description: Name of document category
        type: string
      id:
        type: integer
      name:
        description: Name of document sub-category
        type: string
    required:
      - id
      - name
    type: object
  DocumentCategoryList:
    properties:
      items:
        items:
          $ref: "#/definitions/DocumentCategory"
        type: array
      total_count:
        type: integer
    required:
      - total_count
      - items
    type: object
  DocumentList:
    properties:
      items:
        items:
          $ref: "#/definitions/DocumentSummary"
        type: array
      total_count:
        type: integer
    required:
      - total_count
      - items
    type: object
  DocumentSummary:
    properties:
      document_category:
        $ref: "#/definitions/DocumentCategory"
        type: object
      fda_application:
        $ref: "#/definitions/FDAApplication"
      file:
        $ref: "#/definitions/FileSummary"
        type: object
      id:
        type: string
      name:
        type: string
      source_id:
        description: ID of the document's source
        type: string
      source_url:
        description: URL of origin for this document
        type: string
      trials:
        items:
          $ref: "#/definitions/TrialSummary"
        type: array
      url:
        description: OpenTrials API URL of the document
        type: string
    required:
      - id
      - name
      - url
      - document_category
    type: object
  ErrorResponse:
    properties:
      message:
        type: string
    required:
      - message
    type: object
  FDAApplication:
    properties:
      active_ingredients:
        description: Active ingredients contained in the drug
        type: string
      drug_name:
        description: Name of the drug
        type: string
      fda_approvals:
        description: Associated FDA approvals
        items:
          $ref: "#/definitions/FDAApproval"
        type: array
      id:
        description: FDA application ID
        type: string
      organisation:
        $ref: "#/definitions/Organisation"
        description: Associated organisation
        type: object
      type:
        description: The FDA application type (e.g. "NDA", "ANDA", etc.)
        type: string
      url:
        description: OpenTrials API URL for this FDA application
        type: string
    required:
      - id
      - url
    type: object
  FDAApplicationList:
    properties:
      items:
        items:
          $ref: "#/definitions/FDAApplication"
        type: array
      total_count:
        type: integer
    required:
      - total_count
      - items
    type: object
  FDAApproval:
    properties:
      action_date:
        format: date-time
        type: string
      fda_application:
        $ref: "#/definitions/FDAApplication"
      id:
        description: FDA approval ID
        type: string
      notes:
        description: Additional information about the FDA approval
        type: string
      supplement_number:
        type: integer
      type:
        description: Type of FDA approval
        type: string
    required:
      - id
      - action_date
      - supplement_number
      - type
    type: object
  FDADocumentSearchResult:
    allOf:
      - $ref: "#/definitions/DocumentSummary"
      - properties:
          file:
            $ref: "#/definitions/File"
        type: object
  FDADocumentSearchResults:
    properties:
      items:
        items:
          $ref: "#/definitions/FDADocumentSearchResult"
        type: array
      total_count:
        type: integer
    required:
      - total_count
      - items
    type: object
  File:
    allOf:
      - $ref: "#/definitions/FileSummary"
      - properties:
          pages:
            description: Array with text of each of the file's pages
            items:
              properties:
                num:
                  description: Page number
                  minimum: 1
                  type: integer
                text:
                  type: string
              required:
                - num
                - text
              type: object
            type: array
        type: object
    type: object
  FileSummary:
    properties:
      documentcloud_id:
        type: string
      id:
        description: ID of the file
        type: string
      sha1:
        type: string
      source_url:
        description: URL of origin for this file
        type: string
    type: object
  Intervention:
    properties:
      id:
        description: ID of the intervention
        type: string
      name:
        description: Name of the intervention
        type: string
      type:
        description: Type of the intervention (drug / other)
        enum:
          - drug
          - procedure
          - other
        type: string
      url:
        description: OpenTrials API URL of the intervention
        type: string
    required:
      - id
      - name
      - url
    type: object
  Location:
    properties:
      id:
        description: ID of the location
        type: string
      name:
        description: Name of the location
        type: string
      type:
        description: Type of the location (country / city / other)
        enum:
          - country
          - city
          - other
        type: string
    required:
      - id
      - name
    type: object
  Organisation:
    properties:
      id:
        description: ID of the organisation
        type: string
      name:
        description: Name of the organisation
        type: string
      url:
        description: OpenTrials API URL of the organisation
        type: string
    required:
      - id
      - name
      - url
    type: object
  Person:
    properties:
      id:
        description: ID of the person
        type: string
      name:
        description: Name of the person
        type: string
      url:
        description: OpenTrials API URL of the person
        type: string
    required:
      - id
      - name
      - url
    type: object
  Publication:
    properties:
      abstract:
        type: string
      authors:
        items:
          type: string
        type: array
      created_at:
        format: date-time
        type: string
      date:
        format: date-time
        type: string
      id:
        description: ID of the publication
        type: string
      journal:
        type: string
      slug:
        type: string
      source:
        $ref: "#/definitions/Source"
      source_url:
        type: string
      title:
        type: string
      updated_at:
        format: date-time
        type: string
      url:
        type: string
    required:
      - id
      - url
      - source
      - source_url
      - title
      - abstract
    type: object
  PublicationSummary:
    properties:
      id:
        type: string
      source_id:
        type: string
      source_url:
        type: string
      title:
        type: string
      url:
        type: string
    required:
      - id
      - url
      - title
      - source_id
      - source_url
    type: object
  Record:
    properties:
      created_at:
        description: Date when the record was created
        format: date-time
        type: string
      id:
        description: ID of the record
        type: string
      identifiers:
        description: Object that maps the trial's sources ids with its identifiers.
        type: object
      is_primary:
        description: Is this record the primary source of data for its trial
        type: boolean
      last_verification_date:
        description: Date when the record's data was last verified by provider
        format: date-time
        type: string
      public_title:
        description: Title of the record
        type: string
      recruitment_status:
        description: Trial's recruitment status (e.g. recruiting, unknown etc.)
        enum:
          - recruiting
          - not_recruiting
          - unknown
          - other
        type: string
      source:
        $ref: "#/definitions/Source"
      source_id:
        description: ID of the record's source
        type: string
      source_url:
        description: URL of the record's source (where it was collected from)
        type: string
      status:
        description: Trial's status (e.g. ongoing, withdrawn, complete etc.)
        enum:
          - ongoing
          - withdrawn
          - suspended
          - terminated
          - complete
          - unknown
          - other
        type: string
      trial_id:
        description: ID of the trial referenced in the record
        type: string
      trial_url:
        description: OpenTrials API URL of the trial referenced in the record
        type: string
      updated_at:
        description: Date when the record was updated
        format: date-time
        type: string
      url:
        description: OpenTrials API URL of the record
        type: string
    required:
      - id
      - url
      - trial_id
      - trial_url
      - source
      - source_url
      - public_title
      - created_at
      - updated_at
    type: object
  RecordList:
    items:
      $ref: "#/definitions/Record"
    type: array
  RecordSummary:
    properties:
      id:
        type: string
      is_primary:
        type: boolean
      last_verification_date:
        format: date-time
        type: string
      source_id:
        type: string
      url:
        type: string
    required:
      - id
      - url
      - source_id
    type: object
  RiskOfBias:
    properties:
      id:
        type: string
      risk_of_bias_criteria:
        items:
          $ref: "#/definitions/RiskOfBiasCriteria"
        type: array
      source_id:
        type: string
      source_url:
        type: string
      study_id:
        type: string
    required:
      - id
      - source_id
      - source_url
      - study_id
    type: object
  RiskOfBiasCriteria:
    properties:
      id:
        type: string
      name:
        type: string
      value:
        enum:
          - yes
          - no
          - unknown
        type: string
    required:
      - id
      - name
      - value
    type: object
  Source:
    properties:
      id:
        type: string
      name:
        type: string
      source_url:
        description: URL to source's website
        type: string
      terms_and_conditions_url:
        type: string
      type:
        enum:
          - register
          - journal
          - other
        type: string
    required:
      - id
      - name
    type: object
  SourceList:
    items:
      $ref: "#/definitions/Source"
    type: array
  Trial:
    properties:
      age_range:
        properties:
          max_age:
            description: Maximum participant age (e.g. "12 Years", "1 Month", "15 Days"). If unknown, it's `undefined`. If no limit, it's "any". If not applicable, it's "N/A".
            type: string
          min_age:
            description: Minimum participant age (e.g. "12 Years", "1 Month", "15 Days"). If unknown, it's `undefined`. If no limit, it's "any". If not applicable, it's "N/A".
            type: string
        type: object
      brief_summary:
        description: Summary of the trial
        type: string
      completion_date:
        description: Date the trial was completed
        format: date-time
        type: string
      conditions:
        description: Conditions the trial refers to
        items:
          $ref: "#/definitions/Condition"
        type: array
      discrepancies:
        description: Discrepancies in trial's details between different sources
        items:
          $ref: "#/definitions/Discrepancies"
        type: object
      documents:
        description: Documents related to the trial
        items:
          $ref: "#/definitions/DocumentSummary"
        type: array
      gender:
        description: Gender of the subjects of the trial
        enum:
          - both
          - male
          - female
        type: string
      has_published_results:
        description: Trial has its results published (true/false)
        type: boolean
      id:
        description: ID of the trial
        type: string
      identifiers:
        description: Object that maps the trial's sources ids with its identifiers.
        type: object
      interventions:
        description: Interventions related to the trial
        items:
          $ref: "#/definitions/Intervention"
        type: array
      locations:
        description: Locations related to the trial
        items:
          $ref: "#/definitions/TrialLocation"
        type: array
      organisations:
        description: Organisations related to the trial
        items:
          $ref: "#/definitions/TrialOrganisation"
        type: array
      persons:
        description: People related to the trial
        items:
          $ref: "#/definitions/TrialPerson"
        type: array
      public_title:
        description: Title of the trial
        type: string
      publications:
        description: Publications referring the trial
        items:
          $ref: "#/definitions/PublicationSummary"
        type: array
      records:
        description: (published) records of the trial
        items:
          $ref: "#/definitions/RecordSummary"
        type: array
      recruitment_status:
        description: Recruitment status of the trial
        enum:
          - recruiting
          - not_recruiting
          - unknown
          - other
        type: string
      registration_date:
        description: Date the trial was registered
        format: date-time
        type: string
      results_exemption_date:
        description: Date when a certification of exemption has been filed for the trial
        format: date-time
        type: string
      risks_of_bias:
        items:
          $ref: "#/definitions/RiskOfBias"
        type: array
      source_id:
        description: ID of the trial's source
        type: string
      sources:
        items:
          $ref: "#/definitions/Source"
        type: object
      status:
        description: Completion status of the trial
        enum:
          - ongoing
          - withdrawn
          - suspended
          - terminated
          - complete
          - unknown
          - other
        type: string
      study_phase:
        description: Phases of the study (e.g. `["Phase 2"]` or `["Phase 1", "Phase 2"]`)
        items:
          type: string
        type: array
      target_sample_size:
        description: Target sample size for the trial
        minimum: 0
        type: integer
      url:
        description: Source URL (where the trial was collected from)
        type: string
    required:
      - id
      - url
      - public_title
      - locations
      - interventions
      - persons
      - organisations
      - records
      - publications
      - sources
      - risks_of_bias
    type: object
  TrialLocation:
    allOf:
      - $ref: "#/definitions/Location"
      - properties:
          role:
            enum:
              - recruitment_countries
              - other
            type: string
        type: object
    description: Location of a trial
    type: object
  TrialOrganisation:
    allOf:
      - $ref: "#/definitions/Organisation"
      - properties:
          role:
            enum:
              - primary_sponsor
              - sponsor
              - funder
              - other
            type: string
        type: object
    type: object
  TrialPerson:
    allOf:
      - $ref: "#/definitions/Person"
      - properties:
          role:
            enum:
              - principal_investigator
              - public_queries
              - scientific_queries
              - other
            type: string
        type: object
    description: People related to a trial
    type: object
  TrialSearchResults:
    properties:
      items:
        items:
          $ref: "#/definitions/Trial"
        type: array
      total_count:
        type: integer
    required:
      - total_count
      - items
    type: object
  TrialSummary:
    properties:
      id:
        description: ID of the trial
        type: string
      public_title:
        description: Title of the record
        type: string
      url:
        description: OpenTrials API URL for this trial
        type: string
    required:
      - id
      - url
      - public_title
    type: object
