RCSB PDB Sequence Coordinates Service API Migration Guide

RCSB PDB Sequence Coordinates API changes

Migrating from the 1D Coordinates Service to the Sequence Coordinate Service involves updating your endpoint URLs to call the new service and modifying your applications to account for breaking changes introduced in the new API.

HTTP Request

The Sequence Coordinates Service API only support HTTP POST requests.

End Points

Endpoint alignment has been renamed to alignments.

1D Coordinates Service Sequence Coordinates Service
query UniProt2PDB{
  alignment(
    from:UNIPROT,
    to:PDB_ENTITY,
    queryId:"P01112"
  ){
    query_sequence
    target_alignment {
      target_id
    }
  }
}
query UniProt2PDB{
  alignments(
    from:UNIPROT,
    to:PDB_ENTITY,
    queryId:"P01112"
  ){
    query_sequence
    target_alignments {
      target_id
    }
  }
}

Endpoint group_alignment has been renamed to group_alignments.

1D Coordinates Service Sequence Coordinates Service
query UP_GROUP{
  group_alignment(
    group: matching_uniprot_accession
    groupId: "P01112"
  ) {
    target_alignment {
      target_id
    }
  }
}
query UP_GROUP{
  group_alignments(
    group: MATCHING_UNIPROT_ACCESSION
    groupId: "P01112"
  ) {
    target_alignments {
      target_id
    }
  }
}

End Points Arguments

Endpoint group_annotations boolean argument histogram has been removed. Its functionality has been replaced by a new endpoint group_annotations_summary with the same signature.

1D Coordinates Service Sequence Coordinates Service
query UP_GROUP_FEATURES{
  group_annotations(
    group: matching_uniprot_accession
    groupId: "P01112"
    sources: [PDB_INSTANCE]
    histogram: true
  ) {
    target_id
    features{
      type
    }
  }
}
query UP_GROUP_FEATURES{
  group_annotations_summary(
    group: MATCHING_UNIPROT_ACCESSION
    groupId: "P01112"
    sources: [PDB_INSTANCE]
  ) {
    target_id
    features{
      type
    }
  }
}

Enumerated values of GroupReference are now screaming snake case

>
1D Coordinates Service Sequence Coordinates Service
query UP_GROUP{
  group_alignment(
    group: matching_uniprot_accession
    groupId: "P01112"
  ) {
    target_alignment {
      target_id
    }
  }
}

query SEQ_GROUP{
  group_alignment(
    group: sequence_identity
    groupId: "507_30"
  ) {
    target_alignment {
      target_id
    }
  }
}
query UP_GROUP{
  group_alignments(
    group: MATCHING_UNIPROT_ACCESSION
    groupId: "P01112"
  ) {
    target_alignments {
      target_id
    }
  }
}

query SEQ_GROUP{
  group_alignments(
    group: SEQUENCE_IDENTITY
    groupId: "507_30"
  ) {
    target_alignments {
      target_id
    }
  }
}

Query Fields

Field target_alignment has been renamed to target_alignments.

1D Coordinates Service Sequence Coordinates Service
query UniProt2PDB{
  alignment(
    from:UNIPROT,
    to:PDB_ENTITY,
    queryId:"P01112"
  ){
    query_sequence
    target_alignment {
      target_id
    }
  }
}
query UniProt2PDB{
  alignments(
    from:UNIPROT,
    to:PDB_ENTITY,
    queryId:"P01112"
  ){
    query_sequence
    target_alignments {
      target_id
    }
  }
}

Field target_alignment_subset has been removed. The motivation of this field was to request a subset of alignment based on offset and length arguments. This functionality has been moved to target_alignments field that accepts optional arguments as the removed field.

1D Coordinates Service Sequence Coordinates Service
query UP_GROUP{
  group_alignment(
    group: matching_uniprot_accession
    groupId: "P01112"
  ) {
    target_alignment_subset(after: "5", first:3) {
      edges {
        node {
          target_id
        }
      }
    }
  }
}
query UP_GROUP{
  group_alignments(
    group: MATCHING_UNIPROT_ACCESSION
    groupId: "P01112"
  ) {
    target_alignments(offset:5, first:3) {
      target_id
    }
  }
}

Type Names

GraphQL type name changes. This only affects programmatic users that build types from GraphQL schema

Contact Us

Contact info@rcsb.org with questions or feedback about this service.